ServletConfig中的方法
ServletConfig中有哪些方法:
javax.servlet.ServletConfig;
|
String |
getInitParameter(String name): 通过name获取value |
|
Enumeration |
getInitParameterNames(): 获取所有初始化参数的名字 |
|
ServletContext |
getServletContext(): 获取ServletContext [Servlet上下文] 对象。 |
|
String |
getServletName(): 获取 |
先上代码:
AServlet.java
package com.zhixi.zhang; import java.io.IOException; import java.io.PrintWriter; import java.util.Enumeration; import javax.servlet.Servlet; import javax.servlet.ServletConfig; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class AServlet implements Servlet { private ServletConfig config; @Override public void init(ServletConfig config) throws ServletException { //将局部变里config赋值给实例变里config //目的:在service方法中也可以使用config this.config = config; System.out.println("AServlet --> ServletConfig = "+config.toString()); } @Override public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException { //将value打印到网页 response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); //获取ServletConfig对象 ServletConfig config = getServletConfig(); /*//通过初始化参数的name获取value String driver = config.getInitParameter("driver"); String url = config.getInitParameter("url"); String user = config.getInitParameter("user"); String password = config.getInitParameter("password"); //获取所有出初始化参数的名字 EnumerationinitParameterNames = config.getInitParameterNames(); //遍历输出 while(initParameterNames.hasMoreElements()){ String name = initParameterNames.nextElement(); //通过name获取value String value = config.getInitParameter(name); out.print(name+"="+value); out.print(" */ //获取
"); } out.print("
"); out.print(driver); out.print("
"); out.print(url); out.print("
"); out.print(user); out.print("
"); out.print(password);servletname String servletName = config.getServletName(); out.print(""+servletName+" "); out.print("
"); //打印getSerrvletContext ServletContext servletContext = config.getServletContext(); out.print(servletContext);//org.apache.catalina.core.ApplicationContextFacade@16d12dde } @Override public void destroy() { } @Override public ServletConfig getServletConfig() { return config; } public String getServletInfo() { return null; } }
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>老杜Servlet_04_ServletConfig接口display-name> <welcome-file-list> <welcome-file>index.htmlwelcome-file> welcome-file-list> <servlet> <servlet-name>aservlet-name> <servlet-class>com.zhixi.zhang.AServletservlet-class> <init-param> <param-name>driverparam-name> <param-value>com.mysql.jdbc.Driverparam-value> init-param> <init-param> <param-name>urlparam-name> <param-value>jdbc:mysql//localhost:3306/bjpowernodeparam-value> init-param> <init-param> <param-name>userparam-name> <param-value>rootparam-value> init-param> <init-param> <param-name>passwordparam-name> <param-value>adamin123param-value> init-param> servlet> <servlet-mapping> <servlet-name>aservlet-name> <url-pattern>/aurl-pattern> servlet-mapping> <servlet> <servlet-name>bservlet-name> <servlet-class>com.zhixi.zhang.BServletservlet-class> servlet> <servlet-mapping> <servlet-name>bservlet-name> <url-pattern>/burl-pattern> servlet-mapping> web-app>
方法分析:
1 getInitParmeter(String name)
//web.xml信息
//java文件
//获取到对应的value信息
2 getInitParameterNames():
//输出
3 getServletContext():
4 getServletName()
获取
ServletConfig到底是什么?
ServletConfig是一个Servlet对象的配置信息对象,ServletConfig对象中封装了一个Servlet对象的置信息。Servlet对象的配置信息到web.xml文件中。
一个Servlet对象对应一个ServletConfig对象,100个Servlet对象对应100个ServletConfig对象。