ServletConfig是配置对象,主要把servlet的初始化参数封装到这个对象中。一个网站中可能会存在多个ServletConfig对象,一个ServletConfig对象封装了一个servlet的配置信息。
本次介绍主要是举一个通过servlet打开一个文件的例子来说明用法。
此例子中主要是对文件的路径的修改,由于不能每次修改源文件,所以采用修改配置文件web.xml的方法来更改文件路径。
web.xml的配置方法如下:
<servlet>
<servlet-name>ServletConfigDemo</servlet-name>
<servlet-class>cm.zdh.servlet.ServletConfigDemo</servlet-class>
<!-- servlet的初始化参数 -->
<init-param>
<param-name>path</param-name>
<param-value>c:/bbb.txt</param-value>
</init-param>
</servlet>
解释:
<init-param> 初始化参数
<param-name>参数名
<param-value>参数值
Servlet的源代码如下:
public class ServletConfigDemo extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset = utf-8");//防止乱码问题 String path = null; path = this.getServletConfig().getInitParameter("path"); BufferedReader br = new BufferedReader(new FileReader(path)); String str = null; while((str = br.readLine())!=null){ System.out.println(str); } response.getWriter().write("输出内容来源于:"); response.getWriter().write(path.toString()); } }
代码解释:this.getServletConfig();用于获取ServletConfig对象;
config.getInitParameter("name"); 根据参数名称获取参数值
config.getInitParameterNames(); 获取所有参数名称