BaseServlet.java
package org.guangsoft.controller; import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class BaseServlet extends HttpServlet
{
/**
* 将请求方法到不同的servlet中的不同方法
*/
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=utf-8");
try
{
//获取调用的方法名
String option = request.getParameter("option");
//获取真实调用的servlet字节码文件
Class clazz = this.getClass();
//获取调用的方法
Method method = clazz.getDeclaredMethod(option, HttpServletRequest.class,HttpServletResponse.class);
//执行调用的方法
method.invoke(this, request, response);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}