Servlet ServletConfig接口,Servlet 容器在初始化期间为每个 Servlet 创建ServletConfig对象,以将信息传递给 Servlet。此对象可用于从部署描述符文件(web.xml)获取配置信息,例如参数名称和值。
ServletConfig接口的方法
public String getInitParameter(String name):以String形式返回给定参数的值,如果web.xml中不存在给定参数,则返回null。
public Enumeration getInitParameterNames():返回所有参数名称的枚举。
public String getServletName():返回 servlet 实例的名称。
public ServletContext getServletContext():返回ServletContext的一个对象。
ServletConfig接口示例
在这个例子中,我们将使用两个方法getInitParameter()和getInitParameterNames()来获取web.xml中的所有参数及其值。
getInitParameterNames()方法返回所有参数名称的枚举,并通过在调用getInitParameter()方法期间传递这些名称,我们可以从web.xml获取相应的参数值。
DemoServlet.java
import java.io.*;import javax.servlet.*;import javax.servlet.http.*;import java.util.Enumeration;public class DemoServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter pwriter = response.getWriter(); ServletConfig sc=getServletConfig(); Enumeration<String> e=sc.getInitParameterNames(); String str; while(e.hasMoreElements()) { str=e.nextElement(); pwriter.println("<br>Param Name: "+str); pwriter.println(" value: "+sc.getInitParameter(str)); } }}
web.xml
<web-app> <display-name>BeginnersBookDemo</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>DemoServlet</servlet-class> <init-param> <param-name>MyName</param-name> <param-value>Chaitanya</param-value> </init-param> <init-param> <param-name>MyWebsite</param-name> <param-value>Beginnersbook.com</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/scdemo</url-pattern> </servlet-mapping></web-app>
输出:

