配置web.xml:
<context-param>
<param-name>name</param-name>
<param-value>Jimmy</param-value>
</context-param>
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>com.jd.servlet.TestServlet</servlet-class>
<init-param>
<param-name>mobile</param-name>
<param-value>110</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<load-on-startup>1</load-on-startup>:Servlet对象随Tomcat对象的启动而启动
<init-param></init-param>:配置多个初始化参数,则需要写多个init-param元素
<context-param></context-param>:配置多个初始化参数,则需要写多个context-param元素(被所有的Servlet共享)
获取方法:
一般无参的init()方法用于获取多个Servlet共享的值,有参init(ServletConfig config)方法用于获取Servlet的值
@Override
public void init() throws ServletException {
super.init();
String name = getServletContext().getInitParameter("name");
System.out.println("######" + name);//获取多个Servlet共享的值
String mobile = super.getInitParameter("mobile");//获取Servlet的值
System.out.println("######" + mobile);
}
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
String name = config.getServletContext().getInitParameter("name");
System.out.println("///" + name);//获取多个Servlet共享的值
String mobile = config.getInitParameter("mobile");//获取Servlet的值
System.out.println("///" + mobile);
}