配置 web 应用初始化参数:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>02_Servlet</display-name>
<!-- 配置 web 应用初始化参数(全局参数,所有的 servlet 都可以获得) -->
<context-param>
<param-name>AAA</param-name>
<param-value>AAA's value</param-value>
</context-param>
<context-param>
<param-name>BBB</param-name>
<param-value>BBB's value</param-value>
</context-param>
<context-param>
<param-name>CCC</param-name>
<param-value>CCC's value</param-value>
</context-param>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
获取 web 应用初始化参数:
package com.demo.h_servletcontext;
import java.io.IOException;
import java.util.Enumeration;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/ContextDemo2")
@SuppressWarnings("serial")
public class ContextDemo2 extends HttpServlet {
/*
* 获取 web 应用的初始化参数
*/
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// 得到 ServletContext 对象
ServletContext servletContext = this.getServletContext();
// 根据参数名获得 web 应用的初始化参数
String value = servletContext.getInitParameter("AAA");
System.out.println("AAA=" + value);
System.out.println("-------------------------");
// 获取所有的 web 应用初始化参数
Enumeration<String> enums = servletContext.getInitParameterNames();
while(enums.hasMoreElements()){
String name = enums.nextElement();
String value2 = servletContext.getInitParameter(name);
System.out.println(name + "=" + value2);
}
}
}