第一种方式:web.xml配置

  <servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>com.servlet.HelloServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    <init-param>
      <param-name>charset</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>

其中,load-on-startup>=0时,Web容器(Tomcat)启动过程中会自动加载servlet类,并且其值越小,优先级越高,根据load-on-startup值由小到大依次加载。

而当load-on-startup<0或未定义时,Web容器(Tomcat)启动过程中不会自动加载servlet类,而是在第一次请求时加载。


通过init()方法来获取web.xml中定义的初始化参数(init-param):
	public void init(ServletConfig config) throws ServletException {	
		System.out.println(config.getInitParameter("charset"));
	}


第二种方式:注解配置(适用于Servlet 3.0之后的版本)

@WebServlet(name = "HelloServlet", value = { "/hello" }, loadOnStartup = 1, initParams = { @WebInitParam(name = "charset", value = "UTF-8") })


Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐