servlet的处理 项目用JSP+SERVLET+JAVABEAN浅谈servlet的处理是不是每个小业务(点击事件)都需要去建立一个servlet去处理吖.酱紫,servlet不是会很多? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以用一个servlet床送参数,根据参数来调用不同的方法。 一年没摸过WEB了,可以用一个servlet传送参数,根据参数来调用不同的方法,这个跟struts有点相似,问题是怎么实现? LZ 看看servlet的生命周期就会懂了,他是分为init();service();destroy(); 可以弄个隐藏域标识所请求的方法,比如method=“add” 请求到同一个Servlet根据不同method调用相应的方法,如果嫌if else多可以写个BaseServlet 继承HttpServlet然后让你请求得Servlet继承BaseServletBaseServlet里可以这样写你参考下:public class BaseServlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //执行父类的职责:根据请求是GET还是POST方法,调用doGet或doPost! super.service(request, response); }finally{ } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { process(req,resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { process(req,resp); } protected void process(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //首先获取方法参数 String method = request.getParameter("method"); //如果客户端不传递method参数,则默认调用execute()方法 if(method == null || method.trim().equals("")){ execute(request,response); }else{ //根据method参数的取值,调用相关的方法 try { Method m = this.getClass().getMethod(method, HttpServletRequest.class,HttpServletResponse.class); //将请求转发到相应的方法中 m.invoke(this, request,response); } catch (Exception e) { e.printStackTrace(); } } } protected void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //什么也不做! } } 看看那个叫head first系列的书 JSP+Servlet+javabean 模式下可以将同一类数据写到一个servlet,在这个servlet里写相应的处理方法 ,也可以针对每一个事件(就像你说的那样)写一个servlet ,别怕servlet数量会很多,这样业务逻辑比较的清晰. 传参会不? if else会不? 从0开始学吧。自己写个简单的servlet玩玩吧。 lz可以传参数嘛,根据不同的参数做不同的处理,就要少很多servlet websphere7部署项目,用firefox访问出现html源代码 向大家征集建议:程序员该如何走向架构师 Servlet接口的service()方法 小弟在这儿问一个菜鸟问题! 关于Filter截取到response返回数据的问题 关于appfuse的一个问题,请高手看看 struts的问题,在线等待!!... 请问有没有关于axis中wsdd文件的中文文档? 如何根据已知数据,使用java来生成柱状图、和曲线图啊 关于Document对象的传输的问题,Norwaywoods() 请进 java如何监控windows的服务程序 Web Services
可以用一个servlet传送参数,根据参数来调用不同的方法,
这个跟struts有点相似,问题是怎么实现?
public class BaseServlet extends HttpServlet { @Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//执行父类的职责:根据请求是GET还是POST方法,调用doGet或doPost!
super.service(request, response);
}finally{
} @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
process(req,resp);
} @Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
process(req,resp);
}
protected void process(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//首先获取方法参数
String method = request.getParameter("method");
//如果客户端不传递method参数,则默认调用execute()方法
if(method == null || method.trim().equals("")){
execute(request,response);
}else{
//根据method参数的取值,调用相关的方法
try {
Method m = this.getClass().getMethod(method, HttpServletRequest.class,HttpServletResponse.class);
//将请求转发到相应的方法中
m.invoke(this, request,response);
} catch (Exception e) {
e.printStackTrace();
}
}
}
protected void execute(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { //什么也不做!
}
}
传参会不? if else会不?