Servlet和模本办法

Posted 归零,路上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet和模本办法相关的知识,希望对你有一定的参考价值。

   抽象类HttpServlet,提供7个子方法的默认实现,当我们手写Servlet只需要继承HttpServlet并替换相应的do方法来完成自己的业务逻辑即可。

         我们一般的实现方法:

 

[java] view plain copy
 
  1. public MyServlet extends HttpServlet{  
  2.     public void doGet(HttpServletRequestrequest, HttpServletResponse response){  
  3.     // 处理  
  4. }  
  5.     public void doPost()HttpServletRequestrequest, HttpServletResponse response){  
  6.     // 不关心get、post请求,因此post处理直接调用get处理  
  7.     doGet(request, response);  
  8. }  
  9. }  



 

         Servlet之所以牵扯到了模版方法模式,由于Servlet中最重要的service方法,所有的请求,都先到达service。它定义了HttpServlet处理的总流程和框架。

         Service代码

 

[java] view plain copy
 
  1. 1.   public void service(ServletRequest req, ServletResponse res)    
  2. 2.      throws ServletException, IOException    
  3. 3.    {    
  4. 4.      HttpServletRequest request;    
  5. 5.      HttpServletResponse response;    
  6. 6.      try    
  7. 7.      {    
  8. 8.        request = (HttpServletRequest)req;    
  9. 9.        response = (HttpServletResponse)res;    
  10. 10.     } catch (ClassCastException e) {    
  11. 11.       throw new ServletException("non-HTTP request or response");    
  12. 12.     }    
  13. 13.     //调用protected service    
  14. 14.     service(request, response);    

 

 

         这里顺便提一下模版方法模式:定义一个操作中的算法的骨架,而将一些可变部分的实现延迟到子类中。模版方法模式使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定的步骤。 

技术分享



以上是关于Servlet和模本办法的主要内容,如果未能解决你的问题,请参考以下文章

word文档转化成ftl文件

Servlet中文乱码问题解决办法

Tomcat 10中Servlet无法正常使用的解决办法

jsp和servlet操作mysql中文乱码问题的解决办法

java.lang.StackOverflowError 解决办法

idea中MavenWeb项目不能创建Servlet的解决办法