|
封装类 package com.weidu.servlet;
import java.io.IOException;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
/** *//** * * 标题:servlet跳转基类<br> * 描述:用户打开链接时传递参数method即可跳转到相应的方法,示例:users?method=add,参数有:add,update,del,select<br> * 实现时需覆写父类相应的方法。 如果新增方法时覆写addMethod()方法,添加判断并调用即可<br> * 示例:@Override protected boolean addMethod(String method) {<br> * if (method.equals("login")) {<br> * login();<br> * return true;<br> * }<br> * return super.addMethod(method);<br> * }<br> * * 作者:feezh<br> * 邮箱:feezh@qq.com <br> * 日期:2012-7-18 时间:下午04:02:35 <br> * 版本:1.0 <br> */ public class BaseServlet extends HttpServlet { public BaseServlet() { super(); }
/** *//** * * 功能说明: 添加新的方法<br> * 作者:feezh <br> * 日期:2012-7-18 时间:下午04:30:02 <br> * * @param method * */ protected boolean addMethod(String method) { return false; }
/** *//** * The doGet method of the servlet. <br> * * This method is called when a form has its tag value method equals to get. * * @param request * the request send by the client to the server * @param response * the response send by the server to the client * @throws ServletException * if an error occurred * @throws IOException * if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response); }
/** *//** * The doPost method of the servlet. <br> * * This method is called when a form has its tag value method equals to * post. * * @param request * the request send by the client to the server * @param response * the response send by the server to the client * @throws ServletException * if an error occurred * @throws IOException * if an error occurred */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html"); String method = request.getParameter("method"); if (method == null || method.equals("select")) { select(request, response); } else if (method.equals("del")) { del(request, response); } else if (method.equals("update")) { update(request, response); } else if (method.equals("add")) { add(request, response); } else if (addMethod(method)) { } else { response.sendError(HttpServletResponse.SC_NOT_FOUND, "路径不存在!"); } }
/** *//** * 功能说明: 删除信息<br> * 作者:feezh <br> * 日期:2012-7-18 时间:下午04:02:57 <br> * * @param request * @param response * @throws ServletException * @throws IOException */
public void del(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
/** *//** * * 功能说明: 添加信息<br> * 作者:feezh <br> * 日期:2012-7-18 时间:下午04:02:49 <br> * * @param request * @param response * @throws ServletException * @throws IOException */ public void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
/** *//** * * 功能说明: 修改信息<br> * 作者:feezh <br> * 日期:2012-7-18 时间:下午04:03:07 <br> * * @param request * @param response * @throws ServletException * @throws IOException */ public void update(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
/** *//** * * 功能说明: 查询信息<br> * 作者:feezh <br> * 日期:2012-7-18 时间:下午04:03:13 <br> * * @param request * @param response * @throws ServletException * @throws IOException */ public void select(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
}
测试类 package com.weidu.servlet;
import java.io.IOException;
import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
/** *//** * 标题:<br> * 描述:TODO<br> * 作者:feezh<br> * 邮箱:feezh@qq.com <br> * 日期:2012-7-18 时间:下午04:04:44 <br> * 版本:1.0 <br> */ public class UsersServlet extends BaseServlet {
/** *//** * @Fields serialVersionUID : TODO */
private static final long serialVersionUID = 1L;
@Override public void del(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.del(request, response); System.out.println("删除"); }
@Override public void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.add(request, response); System.out.println("添加"); }
@Override public void update(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.update(request, response); System.out.println("修改"); }
@Override public void select(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { super.select(request, response); System.out.println("查询"); }
@Override protected boolean addMethod(String method) { if (method.equals("login")) { login(); return true; } return super.addMethod(method); }
public void login() { System.out.println("登录"); } }
web.xml
<servlet> <servlet-name>UsersServlet</servlet-name> <servlet-class>com.weidu.servlet.UsersServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>UsersServlet</servlet-name> <url-pattern>/Users</url-pattern> </servlet-mapping> 访问路径: http://localhost/Users?method=login
|