J2EE之ServletContext读取资源文件

ServletContext读取资源文件内容的方式有两种:

方法1.

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

	InputStream in = this.getServletContext().getResourceAsStream("/WEB-INF/classes/data.properties");
	Properties pros = new Properties();
	pros.load(in);

	String username = pros.getProperty("username");
	String password = pros.getProperty("password");

	System.out.println("username = " + username);
	System.out.println("password = " + password);
}

这里须要注意的是data.properties文件的位置在Myeclipse的src文件夹下,为啥getResourceAsStream方法传入的參数确实"/WEB-INF/classes/data.properties"

这是由于这些代码有webserver运行,当项目公布以后。data.properties文件就会被放到tomcat安装文件所在目录下。

如图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbTYzMTUyMTM4Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >

所以这里传入參数就解释清楚了。

方法2

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

	String path = this.getServletContext().getRealPath("/WEB-INF/classes/data.properties");
	FileInputStream in = new FileInputStream(path);
	Properties pros = new Properties();
	pros.load(in);

	String username = pros.getProperty("username");
	String password = pros.getProperty("password");

	System.out.println("username = " + username);
	System.out.println("password = " + password);
}

这里首先通过getRealPath方法获取data.properties文件的绝对路径,然后通过FileInputStream获取文件流。

时间: 2024-08-05 11:46:49

J2EE之ServletContext读取资源文件的相关文章

Java/JavaWeb中读取资源文件

1.一般工程中使用I/O类指定文件的绝对路径读取 FileInputStream fis = new FileInputStream("src/main/resources/zsm.properties"); ppt.load(fis); String memAddr1 = ppt.getProperty("memAddr1"); 2.Web工程中可以使用ServletContext或ClassLoader来读取 2.1.通过ServletContext来读取资源文

使用ServletContext对象读取资源文件

备注:本文以properties文件为例 一.通过ServletContext读取文件 1.通过ServletContext读取放置在src下的properties文件 package com; import java.io.IOException;import java.io.InputStream;import java.util.Properties; import javax.servlet.ServletException;import javax.servlet.annotation

ServletContext对象读取资源文件以及重定向

有两种方式可以读取资源文件 * InputStream getResourceAsStream(String path)     通过文件的地址获取输入流 * String getRealPath(String path)        通过文件的地址获取文件的绝对磁盘路径 步骤: 1. 创建配置文件db.properties 2. 获取资源的输出流 3. 把输出流加载到配置文件中 db.properties username=root33 password=12333 desc=haha33

Java-Servlet--《12-WEB应用中的普通Java程序如何读取资源文件.mp4》 有疑问

\第五天-servlet开发和ServletConfig与ServletContext对象\12-WEB应用中的普通Java程序如何读取资源文件.mp4; 多层时,DAO为了得到资源文件中的配置参数: servlet 中的 doGet方法中获得ServletcontextServletcontext context = this.getServletContext();然后将context 对象传到 DAO中使用,这样的话耦合就高了,不合理. 所以:要通过类加载器的方式 这个Properties

WEB应用中的普通Java程序如何读取资源文件

1 package cn.itcast; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 6 import javax.servlet.ServletException; 7 import javax.servlet.http.HttpServlet; 8 import javax.servlet.http.HttpServletRequest; 9 import javax.servlet.http.HttpSer

读取资源文件方法

1 package cn.gs.ly; 2 import java.io.FileInputStream; 3 import java.io.FileNotFoundException; 4 import java.io.IOException; 5 import java.io.InputStream; 6 import java.util.Properties; 7 import java.util.ResourceBundle; 8 import javax.servlet.Servlet

JavaWeb读取资源文件的四种方式

1. ServletContext 1. 调用getResourcesAsStream方法获取输入流, 相对于webroot, 不用加/2. 读取任何类型的文件3. *只能在web环境下使用 InputStream in = this.getServletContext().getResourceAsStream("WEB-INF/classes/config/db.properties"); 2. 类加载器 1. 相对于类路径, 可以获取类路径下及其子包路径下的资源文件2. 可以用在

读取资源文件的工具.

import java.util.ResourceBundle; import org.springframework.util.NumberUtils; /**读取资源文件的工具类. */ public class ConfigUtil { /**读取资源文件里的键值信息. * 比如有键值名为a,其相应的值为整数类型,那么方法即为:readConfigForObject("a",Integer.class). * @param keyName 键值名 * @param require

intelliJ idea读取资源文件

intelliJ idea读取资源文件 分类: [Java 基础]2015-02-12 16:45 780人阅读 评论(0) 收藏 举报 目录(?)[+] 原文地址 http://yanwushu.sinaapp.com/intellij-idea_raed_resource_file/ 官方文档 以下是jetbrain官网对idea中资源文件的解释,文章最后有此文的链接. 这里的资源文件包括properties文件.图片.dtd文件.xml文件.这些文件被放在项目的classpath路径下.通