在Java Servlet中,每当我们通过扩展 GenericServlet 类来创建Servlet类时,就无法进行会话管理。
所以我很想知道同样的事情
答案 0 :(得分:2)
HTTP Session是HTTP特定的东西。通用Servlet不知道HTTP概念,只有HTTPServlet知道。
关于下一个问题:“什么时候需要GenericServlet?”答案是never。
答案 1 :(得分:0)
GenericServlet中没有特定于协议的功能,它是基本的通用Servlet接口的实现。基于Servlet的会话仅设计用于使用HTTP协议的交互,该协议具有Servlet容器模拟连续用户会话所需的两个关键功能:cookie和支持URL重写的基于URL的导航。因此,Servlet API将HttpSession接口放置在javax.servlet.http包中,并且Session引用仅可通过该包中的类使用。
因此,GenericServlet类实现Servlet,ServletConfig和Serializable接口。它提供了除服务方法之外的所有这些接口方法的实现。 GenericServlet类可以处理任何类型的请求,因此它与协议无关。 您可以通过继承GenericServlet类并提供service方法的实现来创建通用servlet。