关于《Core Servlet and JavaServer Pages》中的Servlet Life Cycle不太明白

Paripatetic 2006-02-15 05:14:35
这几个优点没有理解,望指点
If your servlet needs to handle both GET and POST identically, have your doPost method call doGet, or vice versa

Although this approach takes a couple of extra lines of code, it has several advantages over directly overriding service. First, you can later add support for other HTTP request methods by adding doPut, doTrace, etc., perhaps in a subclass. Overriding service directly precludes this possibility. Second, you can add support for modification dates by adding a getLastModified method, as illustrated in Listing 3.7. Since getLastModified is invoked by the default service method, overriding service eliminates this option. Finally, service gives you automatic support for HEAD, OPTION, and TRACE requests.
...全文
110 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Paripatetic 2006-02-15
  • 打赏
  • 举报
回复
我看了半天也不明白
支持其他方法和
在GET中调用POST或在POST中调用GET
有什么关系呢?
doway 2006-02-15
  • 打赏
  • 举报
回复
因为一些乱七八糟的理由:

1、service 还支持 doPut, doTrace 符方法。
2、service 原来的实现支持 getLastModified 方法。
3、我也不知道那说的是什么了。
Paripatetic 2006-02-15
  • 打赏
  • 举报
回复
是啊,请达人们不要说半句话呀
xuyadong 2006-02-15
  • 打赏
  • 举报
回复
但不要采用直接覆盖 service 方法的方式。因为……

因为什么啊?
polarman 2006-02-15
  • 打赏
  • 举报
回复
要使你的servlet能同时处理GET请求和POST请求,可以同时重载两个函数doGet,doPost在一个函数中处理请求,另一个函数中调用这个函数,而不要直接重载service方法
doway 2006-02-15
  • 打赏
  • 举报
回复
Servlet 中,service 方法根据 HTTP 请求的方法是 GET 还是 POST 决定是调用 doGet 还是 doPost 方法。

文中说到如果你的 Servlet 要能够处理这两种方法,应该采用在 doGet 中调用 doPost,或者是反过来,但不要采用直接覆盖 service 方法的方式。因为……
J2SE部分 1. Java Getting Started (Java课程简介及开篇) 2. Identifier,keyword and types (标示符, 关键字和数据类型) 3. Expression and Flow Control (表达式和流控制) 4. Array (数组) 5. Object-Oriented Programming I (类与对象I) 6. Object-Oriented Programming II (类与对象II) 7. Object-Oriented Advanced Topic (类与对象高级特性) 8. Exceptions (异常) 9. 图形用户界面编成 (安排一个游戏例子,坦克或者飞机游戏;以及一个CS结构的QQ) 10. Applet (Applet编程) 11. Multi-Thread(多线程) 12. I/O and File (输入/输出流及文件) 13. Networking (网络编程) 以上教学过程贯穿一个银行项目,根据每天所学的东西不断完善 J2EE部分 14. JDBC Overview and Using JDBC (JDBC概述及使用) 15. JDBC 2.0 core features (JDBC 2.0核心) 16. JDBC 2.0 standard extension (JDBC 2.0高级特性) 以上教学过程将讲一个使用Java编写暴力破解数据库用户名和密码的程序 J2EE WEB部分 17. Servlets Baiscs (Servlet基础) 18. Forms Processing with Servlets(Servlet表单处理) 19. Servlets Life CycleServlet生命周期) 20. Resources Accessing(Servlet资源获取) 21. Persistent States in HttpServlets(Servlet状态持久化) 22. Filter Programming (Filter编程) 23. Web Application Life Cycle Events(Listener编程) 24. HTML Introduction (HTML介绍) 25. JavaScript Introduction (JavaScript介绍) 26. Introduction to JavaServer Pages (JSP介绍) 27. Creating, Deploying and Executing a JSP (生成, 部署及运行JSP) 28. Scripting (JSP脚本) 29. Working with Reusable Components (使用JavaBeans) 30. Handling Exceptions (JSP异常处理) 31. Custom Tags I (自定义标签I) 32. Java Standard Tag Library (标准标签库) 33. Expression Language(表达式语言) 34. Expression Language(表达式语言) 35. 使用Java WEB技术编写网页QQ J2EE 框架部分 36. Eclipse工具使用 37. Struts 38. Hibernate 39. Spring J2EE 高级部分 40. EJB 学完上述课程以后,和大家一起开发一个网上书店 先上传第一课,后续会陆续跟新

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧