Servlets doGet doPost AND?

new*_*bie 1 java servlets

美好的一天!

我正在阅读Head First Servlets和JSP,它说99%的servlet都使用了HttpServlet.另外1%是什么?它说在现实世界中,99.9%的servlet都会覆盖doGet()或doPost()方法.其他0.1%是什么?或者不值得一提,这就是为什么这本书没有提到它?

谢谢.

Bal*_*usC 7

1%不使用抽象HttpServlet类.所以他们使用Servlet界面而不扩展HttpServlet.

目前在Java EE API中,只有一个Servlet这样做:FacesServlet它是Java EE提供的MVC框架JavaServer Faces(JSF)背后的核心控制器.JSF使您可以跳过所有繁琐的过程和样板代码,这些代码是收集,转换和验证参数,更新模型值和调用特定操作方法所必需的.

但在撰写本书时,作者可能没有意识到这一点.截至目前,JSF肯定不占1%.在理论上有可能实现Servlet其他协议不是HTTP,FTP等.这不是标准Java EE API提供的,但是有一些第三方"FtpServlet"类.我相信一些Portlet API也使用非HttpServlet类(它们只是实现Servlet而不是扩展HttpServlet).

至于HTTP方法,旁边的HTTP GETPOST也有HEAD,PUT,OPTIONS,等,但我认为0.1%是严重低估.该HEAD肯定是更经常使用,认为servletcontainer自己的DefaultServlet(像为Tomcat有).它HEAD在浏览器缓存请求中起着重要作用.但是,当说到"自产自销"的servlet,那么它确实是GETPOST它得到的唯一的关注.

也可以看看:

  • 你是最好的! (2认同)