httpservlet 子类需要复写httpservlet 里的init方法吗? 5
为什么写一个类继承httpservlet后直接在类里写service方法就行了。不写init方法怎么创建并初始化这个RegisterServlet对象呢?还有不写dest...
为什么写一个类继承httpservlet后直接在类里写service方法就行了。不写init方法怎么创建并初始化这个RegisterServlet对象呢?还有不写destroy方法怎么销毁呢? 还有为什么有的子类里写的是doget和dopost方法而不写service方法呢?
展开
展开全部
不需要,如果要重写的话一般是用来做一些自己的事情。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般不需要。
因为init()方法是在javax.servlet包中的servlet接口中声明、在它的实现抽象类Class GenericServlet中实现的,而Class HttpServlet继承了GenericServlet。关键在于:
init()方法是由servlet容器(如Tomcat、Jetty等)自动调用的。
在java EE 8的APIs中对于init()有如下表述:
void init(ServletConfig config)throws ServletException
Called by the servlet container to indicate to a servlet that the servlet is being placed into service.
The servlet container calls the init method exactly once after instantiating the servlet. The init method must complete successfully before the servlet can receive any requests.
也就是说servlet容器在实例化servlet后立即调用init()初始化servlet。一般不用自己写和调用。
destroy()方法类似。
至于为什么只重写protected void service(HttpServletRequest req,HttpServletResponse resp) throws ServletException, IOException方法即可,那是因为doxxx方法是通过service方法调用(分配)的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询