servlet初识servletConfig
package day09;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ConfigDemo extends HttpServlet {
	private static final long serialVersionUID = 7251449372723913413L;
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");
		/*
		 * 在servlet中频繁的信息修改和切换的话是很麻烦的,我们写成硬代码的话,修改也很困难!
		 * 所以在servlet的生命周期中有一个很重要的对象:被高度封装了的servlet的配置信息的对象
		 * servletConfig!
		 *
		 * 但是如果我们要通过覆盖init的有参构造,通过其中的有参构造去获得其中的信息的话,是很麻烦的
		 * 所以我们要通过一种特殊的方法去进行;因为java的设计者考虑到了我们要获取servletConfig对象
		 * 的需求
		 *
		 * 所以在servlet的成员变量中提供了被private修饰的servletConfig的变量
		 * 我们只需要在继承了Servlet的方法中调用getServletConfig方法就可以得
		 * 到servletConfig对象
		 *
		 */
		ServletConfig servletConfig = this.getServletConfig();
		/*
		 * 以下的方法就是获得参数的:
		 * servletConfig.getInitParameter("name");
		 * servletConfig.getInitParameterNames();
		 */
		String path = null;
		/*
		 * 读取到init-param中的参数
		 * <servlet>
    			<servlet-name>ConfigDemo</servlet-name>
    			<servlet-class>gz.itcast.f_config.ConfigDemo</servlet-class>
    			<!-- servlet的初始化参数 -->
    			<init-param>
    				<param-name>path</param-name>
    				<param-value>e:/aaa.txt</param-value>
    			</init-param>
  		    </servlet>
		 */
		path = servletConfig.getInitParameter("path");
		System.out.println(path);
		BufferedReader br = new BufferedReader(new FileReader(path));
		String value = null;
		while((value = br.readLine()) != null) {
			System.out.println(value);
		}
		br.close();
	}
}
												
											servlet初识servletConfig的更多相关文章
- Servlet、ServletConfig、ServletContext深入学习
		
1.Servlet学习 1.Servlet生命周期 Servlet 加载—>实例化—>服务—>销毁. init(servletConfig):(经过自己的测试发现会先调用这个而不是i ...
 - servlet中ServletConfig的使用
		
转自:http://www.zzzj.com/html/20090117/69483.html 前言 相对于ServletContext,ServletConfig是针对特定的Servlet的参数或属 ...
 - Java Servlet(三):Servlet中ServletConfig对象和ServletContext对象
		
本文将记录ServletConfig/ServletContext中提供了哪些方法,及方法的用法. ServletConfig是一个抽象接口,它是由Servlet容器使用,在一个servlet对象初始 ...
 - Servlet初识
		
1.servlet的生命周期 servlet生命周期中的三大重要时刻 servlet从不存在状态迁移到初始化状态(能够为客户提供服务),首先是从构造函数开始,但是构造函数只是使其成为一个对象,而不是一 ...
 - HTTP协议 Servlet入门  Servlet工作原理和生命周期  Servlet细节  ServletConfig对象
		
1 HTTP协议特点 1)客户端->服务端(请求request)有三部份 a)请求行--请求行用于描述客户端的请求方式.请求的资源名称,以及使用的HTTP协议版本号 请求行中的GET ...
 - Servlet 使用ServletConfig对象来配置Servlet
		
ServletContext和ServletConfig的关联 相同点: 1.都可以用来配置Servlet 2.都可以写在web.xml中. 区别点: 1.ServletContext对象,对于所有的 ...
 - Servlet(7)—ServletConfig接口和SevletContext接口
		
ServletConfig接口 1. 可以获取当前Servlet在web.xml中的配置信息(用的不多) 2. 在不使用"硬编码"的情况下,将部署状态信息传递给Servlet.这个 ...
 - JavaWeb之Servlet中ServletConfig和ServletContext
		
[声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140877.html [正文] 一.ServletConfig:代表当前 ...
 - servlet的ServletConfig接口
		
ServletConfig接口 A servlet configuration object used by a servlet container to pass information to a ...
 
随机推荐
- File类与常用IO流第十章——序列化流
			
第十章.序列化流 序列化流和反序列化流概述 序列化:用一个字节序列表示一个对象,该字节序列包含该对象的数据.对象的类型和对象中存储的属性等等信息.字节序列写出到文件后,相当于文件中持久保存了一个对象的 ...
 - 【强连通分量】Proving Equivalences
			
[题目链接]hdu-2767 [题目描述] Consider the following exercise, found in a generic linear algebra textbook. L ...
 - NPM 所有的指令已经问题 使用淘宝镜像 出现code EAI_AGAIN
			
windows怎么卸载cnpm? npm uninstall cnpm -g windows怎么检测cnpm是否安装成功 cnpm -v 我们直接将node的仓库地址换成淘宝仓库地址即可 单次使用 n ...
 - element UI+vue关于日期范围选择的操作,picker-options属性的使用
			
一般 <el-date-picker />使用会出现起始日期和结束日期,结束日期不能早与起始日期,选择了其实日期后,结束日期大于起始日期的不可选,置灰,同理先选结束日期后再选起始日期,那么 ...
 - jQuery 两个日期时间相减
			
var sDate='2016-10-31';var eDate='2016-10-10'var sArr = sDate.split("-");var eArr = eDate. ...
 - javascript获取焦点对象ID
			
document.activeElement 方法:if(document.activeElement.id="textbox1") { }
 - Spring-初见
			
目录 组成 Spring Boot与Spring Cloud IOC DI 1.常量注入 2.Bean注入 3.Properties注入 p命名和c命名注入 Bean Singleton Protot ...
 - Go语言常见的坑
			
目录 1. 可变参数是空接口类型 2. 数组是值传递 3.map遍历是顺序不固定 4. 返回值被屏蔽 5.recover必须在defer函数中运行 6. main函数提前退出 7.通过Sleep来回避 ...
 - 四、从GitHub浏览Prism示例代码的方式入门WPF下的Prism之Mvvm的13示例
			
上一篇之分析了示例,没有最终写DEMO,把这一篇分析完,总结后一起写Prism下的MVVM例子. 这一篇开始分析从13示例开始,分析到MVVM主要部分结束然后写一个分析后的总结DEMO 添加一段新的内 ...
 - 如何实现让div垂直居中,左右10px,高度始终为宽度一半
			
方法一:利用height:0; padding-bottom: 50%; <!DOCTYPE html><html lang="en"> <head& ...