ServletContext接口(三)读取Web应用下的资源文件

3.读取Web应用下的资源文件

ServletContext接口的常用方法:

方法说明功能描述
Set getResourcePaths(String path)返回一个 Set 集合,集合中包含资源目录中子目录和文件的路径名 称。参数 path 必须以正斜线(/)开始,指定匹配资源的部分路径
String getRealPath(String path)返回资源文件在服务器文件系统上的真实路径(文件的绝对路径)。参数 path 代表资源文件的虚拟路径,它应该以正斜线(/)开始,/ 表示当前 Web 应用的根目录,如果 Servlet 容器不能将虚拟路径转换为文 件系统的真实路径,则返回 null
URL getResource(String path)返回映射到某个资源文件的 URL 对象。参数 path 必须以正斜线(/)开始,/ 表示当前 Web 应用的根目录
InputStream getResourceAsStream(String path)返回映射到某个资源文件的 InputStream 输入流对象。参数 path 的传递规则和 getResource() 方法完全一致

创建文件资源

在项目中右击src目录new—other—general—file—next----输入文件名
创建一个名为“newfile”的文件
在这里插入图片描述
在这里插入图片描述

在创建好的文件中输入如下所示的配置信息
Company = CSDN
Address = Beijing
在这里插入图片描述
注:Eclipse中在src目录下创建的资源文件夹在Tomcat服务器启动时会被复制到项目的WEB-INF/classes目录下

创建读取资源文件的Servlet类TestServlet06

TestServlet06:

public class TestServlet06 extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// 向浏览器说明编码方式,防止乱码
		response.setContentType("text/html;charset=utf-8");
		ServletContext context = this.getServletContext();
		PrintWriter out = response.getWriter();
		// 获取相对路径中的输入流对象
		// InputStream in=context.getResourceAsStream("/WEB-INF/classes/itcast.properties");

		// 获取绝对路径
		FileInputStream in = new FileInputStream(context.getRealPath("/WEB-INF/classes/newfile"));
		//Properties相关说明在文末
		Properties pros = new Properties();
		pros.load(in);
		out.println("Company=" + pros.getProperty("Company") + "<br />");
		out.println("Address=" + pros.getProperty("Address") + "<br />");
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		this.doGet(request, response);
	}
	//浏览器测试网址 http://localhost:8080/chapter03/TestServlet06
}

对Properties类的说明

菜鸟教程说明

Properties类
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心醉瑶瑾前

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值