在web.xml中配置servlet参数
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>MyTest</servlet-name>
<servlet-class>cn.tzsk.MyServlet</servlet-class>
<init-param>
<param-name>country</param-name>
<param-value>China</param-value>
</init-param>
<init-param>
<param-name>language</param-name>
<param-value>Chinese</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>MyTest</servlet-name>
<url-pattern>/MyTest</url-pattern>
</servlet-mapping>
</web-app>
servlet 代码 MyServlet
package cn.tzsk;
import jakarta.servlet.*;
import jakarta.servlet.annotation.WebServlet;
import java.io.IOException;
import java.util.*;
public class MyServlet implements Servlet {
private String parameterName;
private String parameterValue;
private Enumeration<String> parameterNames;
private Map<String,String> m1;
private String contextPath ;
@Override
public void init(ServletConfig servletConfig) throws ServletException {
/*第一次创建servlet时调用,后续请求时不再调用,一次性初始化
* 每一个用户请求都会产生一个新的线程*/
m1 = new HashMap();
//获取的参数集合
parameterNames = servletConfig.getInitParameterNames();
while(parameterNames.hasMoreElements()){
parameterName = parameterNames.nextElement();
//通过参数名取出值
parameterValue = servletConfig.getInitParameter(parameterName);
//压入Map中
m1.put(parameterName,parameterValue);
}
contextPath = servletConfig.getServletContext().getServletContextName();
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
/*执行实际任务的主要方法 */
servletResponse.setContentType("text/html");
servletResponse.getWriter().write("MyServlet Hi Hi!");
for(Map.Entry<String,String> initParameter : m1.entrySet()) {
servletResponse.getWriter().write(initParameter.getKey()+": ");
servletResponse.getWriter().write(initParameter.getValue()+"; ");
}
servletResponse.getWriter().write("ContextPath: "+ contextPath);
String id = servletRequest.getParameter("ID");
try {
servletResponse.getWriter().write("参数ID="+id);
} finally {
}
}
@Override
public String getServletInfo() {
return null;
}
@Override
public void destroy() {
}
}