有时候要执行一些初始化的代码,比如校验数据库的完整性,就需要自启动
load-on-startup
-
在web.xml中增加一句:<load-on-startup>10</load-on-startup>
-
10表示优先级,数字越小,启动的优先级越高
image.png
-
web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
<load-on-startup>10</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
</web-app>
- HelloServlet.java文件
import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloServlet extends HttpServlet {
@Override
public void init(ServletConfig config) throws ServletException {
System.out.println("init of Hello Servlet");
}
public void doGet(HttpServletRequest request, HttpServletResponse responce) {
// TODO Auto-generated method stub
try {
responce.getWriter().println("<h1>Hello Servlet!</h1>");
responce.getWriter().println(new Date().toLocaleString());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
网友评论