首先说明:
-
load-on-startup标记容器是否在启动的时候实例化并调用其init()方法的优先级。
-
它的值表示servlet应该被载入的顺序
-
当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;
-
如果值小于0或未指定时,则表示只有在第一次请求的容器才在该servlet调用初始化函数
-
正值越小,servlet的优先级越高,应用启动时就越先加载。
-
值相同时,容器就会自己选择顺序来加载。
init-param
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<servlet>
<servlet-name>simple</servlet-name>
<servlet-class>chen.hao.cn.servlet.SimpleServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>life</servlet-name>
<servlet-class>chen.hao.cn.servlet.LifeCycleServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>param</servlet-name>
<servlet-class>chen.hao.cn.servlet.InitParameterServlet</servlet-class>
<load-on-startup>3</load-on-startup>
<init-param>
<param-name>ref1</param-name>
<param-value>CHEN</param-value>
</init-param>
<init-param>
<param-name>ref2</param-name>
<param-value>HAO</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>param</servlet-name>
<url-pattern>/ipar</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>life</servlet-name>
<url-pattern>/lc</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>simple</servlet-name>
<url-pattern>/demo</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>simple</servlet-name>
<url-pattern>/demo.chen</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>simple</servlet-name>
<url-pattern>/demo/*</url-pattern>
</servlet-mapping>
</web-app>
显示的错误为:cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-
param'. One of '{"http://java.sun.com/xml/ns/j2ee":run-as, "http://java.sun.com/
xml/ns/j2ee":security-role-ref}' is expected.
改错方法;把<load-on-startup>3</load-on-startup>这行代码放在
<init-param>
<param-name>ref1</param-name>
<param-value>CHEN</param-value>
</init-param>
<init-param>
<param-name>ref2</param-name>
<param-value>HAO</param-value>
</init-param>
上述代码末端即可~~~~~~~~~~~~~~~~