日期:2014-05-18  浏览次数:20713 次

servlet到底是啥玩意
刚刚看到最新版本3.1,跟随jee7去年分布的。
这东西不是早淘汰了嘛,怎么还在更新?比它还新的jsp,struts都基本没有什么改进
了。
因为它是jee的核心?

能不能这么理解,上层的struts,spring,JSF啥的,归根结底还是靠javax.servlet
里面的东西?所以struts被spring淘汰了,jsf完蛋了,但servlet一直离不了?
其实还是我疑惑很久的一个问题,啥是java ee?现在最新的servlet连web.xml都可以
不要了,用annotation来代替。这都是JEE的规范?
就是jee的servlet,web.xml由他们说了算,没法绕过去,而上层的ejb,jsf你可以不遵
守?
------解决方案--------------------
servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。Java Servlet技术为这些应用程序定义了一个特定于HTTP的 servlet类。

javax.servlet和javax.servlet.http包为编写servlet提供了接口和类。所有的servlet都必须实现Servlet接口,该接口定义了生命周期方法。

当实现一个通用的服务时,您可以使用或扩展由Java Servlet API提供的GenericServlet类。HttpServlet类提供了一些方法,诸如doGet和doPost,以用于处理特定于HTTP的服务。 

参考资料:http://gceclub.sun.com.cn/staticcontent/html/webservices/web_services_tutorial/jst.14/14.1.htm
------解决方案--------------------
struts怎么会被sping淘汰呢?你说的是springmvc吧
servlet跟spring没有毛关系,怎么说是spring的核心呢?
新版的servlet虽然采用了注解的方式, 但只是一种编程方式而已
servlet是javaweb的核心, struts这些框架都是在基础上完成的
除非出了新的基于http的web服务端的处理方式, 不然servlet是不会被java界淘汰的
------解决方案--------------------
servlet越来越变成一个“核”的概念
struts等框架,基本上是围绕这个核部署的一层应用。

比如struts的ActionServlet就是一个封装了Servlet的“核心类”

而有些时候说的servlet几点几,
通常指的是一套规范,包括某些新定义的接口等等