博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Servlet和模本办法
阅读量:7239 次
发布时间:2019-06-29

本文共 1040 字,大约阅读时间需要 3 分钟。

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

         我们一般的实现方法:

 

[java]   
 
  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]   
 
  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);    

 

 

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

转载于:https://www.cnblogs.com/writeLessDoMore/p/6798930.html

你可能感兴趣的文章
KindEditor编辑器在j2ee项目中的运用及常用问题回顾
查看>>
vue使用的经验总结
查看>>
Win7系统优化十大技巧
查看>>
uio浅析
查看>>
PHP中$_FILES的使用及注意事项
查看>>
Linux命令之which
查看>>
蓦然回头看JAVA线程变量 ThreadLocal
查看>>
Centos 6.5 装机后安装设置,含脚本
查看>>
mysql self join的实现--left join 和inner join
查看>>
http请求
查看>>
国学与科学:如何培养中国人的科学创新思考技术
查看>>
MergeSort (归并排序)
查看>>
1-CLR线程池的作用与原理浅析
查看>>
近似pi
查看>>
[Unity3D]程序退出进程及资源问题
查看>>
mysql导出表结构不导出数据
查看>>
zabbix安装出现的问题
查看>>
华为eNSP GRE
查看>>
赚钱的这些年(上)苦逼
查看>>
我的友情链接
查看>>