在servlet的配置當(dāng)中,<load-on-startup>6</load-on-startup>的含義是:
標(biāo)記容器是否在啟動(dòng)的時(shí)候就加載這個(gè)servlet。
當(dāng)值為0或者大于0時(shí),表示容器在應(yīng)用啟動(dòng)時(shí)就加載這個(gè)servlet;
當(dāng)是一個(gè)負(fù)數(shù)時(shí)或者沒有指定時(shí),則指示容器在該servlet被選擇時(shí)才加載。
正數(shù)的值越小,啟動(dòng)該servlet的優(yōu)先級(jí)越高。
Servlet specification:
The load-on-startup element indicates that this servlet should be loaded (instantiated and have its init() called) on the startup of the web application. The optional contents of these element must be an integer indicating the order in which the servlet should be loaded. If the value is a negative integer, or the element is not present, the container is free to load the servlet whenever it chooses. If the value is a positive integer or 0, the container must load and initialize the servlet as the application is deployed. The container must guarantee that servlets marked with lower integers are loaded before servlets marked with higher integers. The container may choose the order of loading of servlets with the same load-on-start-up value.
我以配置數(shù)據(jù)庫(kù)連接為例。
1,web.xml文件的內(nèi)容如下:
<servlet>
<servlet-name>LoadDBConfigServlet</servlet-name>
<servlet-class>org.svse.action.LoadDBConfigServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
2,配置連接參數(shù)的servlet類如下:
public class LoadDBConfigServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void init(ServletConfig config) throws ServletException {
InputStream in = LoadDBConfigServlet.class
.getResourceAsStream("/dbconfig.properties");
Properties dbconfig = new Properties();
try {
dbconfig.load(in);
System.out.println("ddd"+dbconfig.getProperty("url"));
DBConfig.driver = dbconfig.getProperty("driver");
DBConfig.url = dbconfig.getProperty("url");
DBConfig.username = dbconfig.getProperty("username");
DBConfig.pwd = dbconfig.getProperty("pwd");
System.out.println("數(shù)據(jù)配置設(shè)置完成!"+DBConfig.driver);
} catch (IOException e) {
e.printStackTrace();
}
}
}
3,DBConfig類如下:
public class DBConfig {
public static String driver;
public static String url;
public static String username;
public static String pwd;
}
4,dbconfig.properties內(nèi)容如下:
driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
url=jdbc:sqlserver://localhost:1433;databasename=svse
username=sa
pwd=sa