init() 方法

时间:2024-06-07 20:35:57
 1 /**
* servlet init()在web应用程序启动之后,第一个请求到达Servlet之前调用。
* 问题1:如果init()中需要处理大量的工作,那么servlet在处理第一个请求需要花费大量的时间
* 解决1:在web.xml配置文件中添加配置问题<load-on-startup>1</load-on-startup>
* 表示在web应用程序启动之后立即调用init()方法,如果有多个servlet使用了该配置,那么调用顺序是数字小的先调用
*/
public void init() {
System.out.println("servlet 处理第一个请求之前");
try {
Thread.sleep(10000);
System.out.println("servlet 在处理第一个请求之前休眠10S,处理第二次请求将不再执行该方法");
} catch (InterruptedException e) {
e.printStackTrace();
}
} protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException {
response.getWriter().println("Hello Servlet $$$$$");
}
 <servlet>
<servlet-name>helloServlet</servlet-name>
<display-name>This is the display name of my J2EE component</display-name>
<description>This is the description of my J2EE component</description>
<servlet-class>cn.dyf.action.servlet.HelloServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>