JavaWeb之得到web应用中的资源文件
2017-03-27 09:32
309 查看
新建一个web项目,在src下建一个db.properties文件,文件中有一些配置信息,如:
创建一个servlet类ResourceDemo.java,在这个类中读取db.properties中的配置信息.整个ResourceDemo.java代码如下:
得到web应用中的资源文件就两种写法,前者返回一个String,代表自己所要访问资源的路径,后者就返回所要访问资源的InputStream.
方式一时打印出来的结果:
path:D:\develop\tomcat\apache-tomcat-7.0.40\webapps\day11_cookie\WEB-INF\classes\db.properties
username=root,password=abc
读取数据成功从结果也可以看出,"/"就代表了"D:\develop\tomcat\apache-tomcat-7.0.40\webapps\day11_cookie"路径,这和自己tomcat位置有关.
具体写法都在上面的servlet类中有注释了,各取所需吧!
我以后肯定会忘记,所以又记了一篇博客!那么,Good Luck!
username=root password=abc
创建一个servlet类ResourceDemo.java,在这个类中读取db.properties中的配置信息.整个ResourceDemo.java代码如下:
package com.bighuan.path; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.util.Properties; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 读取项目中的资源文件 * @author bighuan * */ public class ResourceDemo extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /** * .代表java命令运行目录,java命令在哪里呢?在tomcat服务器的bin目录下:tomcat/bin * 结论:在web项目中,.代表在tomcat/bin目录下开始,所以不能使用这种相对路径,在web项目中不能 * 通过这种方式拿资源文件 */ /*File file=new File("./src/db.properties"); InputStream is=new FileInputStream(file);*/ /** * 正确方法: * 使用web应用下加载资源文件的用法 */ //得到上下文 ServletContext context = getServletContext(); /** * 方式一: * context.getRealPath(String path):返回资源文件的绝对路径 *斜杠(/)表示当前web应用发布到服务器中那个根目录,当前web应用名称是day11_cookie,所以斜杠(/) *表示tomcat/webapps/day11_cookie目录 */ /*String path = context.getRealPath("/WEB-INF/classes/db.properties"); System.out.println("path:"+path); InputStream is=new FileInputStream(new File(path));*/ /** * 结果: * path:D:\develop\tomcat\apache-tomcat-7.0.40\webapps\day11_cookie\WEB-INF\classes\db.properties */ /** * 方式二: * context.getResourceAsStream(String path):得到资源文件,返回输入流 * 路径写法和方式一一样 */ InputStream is = context.getResourceAsStream("/WEB-INF/classes/db.properties"); Properties proper=new Properties(); //读取资源文件 proper.load(is); System.out.println("方式二读取资源文件"); String username = proper.getProperty("username"); String password=proper.getProperty("password"); System.out.println("username="+username+",password="+password); System.out.println("读取数据成功"); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); } }
得到web应用中的资源文件就两种写法,前者返回一个String,代表自己所要访问资源的路径,后者就返回所要访问资源的InputStream.
context.getRealPath("路径") context.getResourceAsStream("路径");
方式一时打印出来的结果:
path:D:\develop\tomcat\apache-tomcat-7.0.40\webapps\day11_cookie\WEB-INF\classes\db.properties
username=root,password=abc
读取数据成功从结果也可以看出,"/"就代表了"D:\develop\tomcat\apache-tomcat-7.0.40\webapps\day11_cookie"路径,这和自己tomcat位置有关.
具体写法都在上面的servlet类中有注释了,各取所需吧!
我以后肯定会忘记,所以又记了一篇博客!那么,Good Luck!
相关文章推荐
- Web应用中的普通java程序获取资源文件
- Java-Servlet--《12-WEB应用中的普通Java程序如何读取资源文件.mp4》 有疑问
- java_web12-WEB应用中的普通Java程序如何读取资源文件
- WEB应用中的普通Java程序如何读取资源文件
- java_web11-ServletContext读取Web应用中的资源文件
- web应用中普通java程序读取资源文件
- WEB应用中普通Java程序如何读取资源文件
- Portal-Basic Java Web 应用开发框架:应用篇(一) —— 配置文件
- 在 action 的 java 里面获得应用 WEB-INF 下面的文件的路径方法
- Android APK反编译得到Java源代码和资源文件
- Android APK反编译得到Java源代码和资源文件
- Java web开发中读取资源文件
- Android APK反编译得到Java源代码和资源文件
- 关于如何在java的web应用获取服务器资源。
- 如何将Web应用打包成.war文件? 转自:http://blog.csdn.net/code_JAVA/archive/2008/05/19/2457749.aspx
- JAVA应用XFire框架来实现WebServie的大文件传输功能之一(下载)
- java web应用文件下载(包括中文文件名乱码处理)
- JAVA应用XFire框架来实现WebServie的大文件传输功能之一(下载)
- Android APK反编译得到Java源代码和资源文件
- Android APK反编译得到Java源代码和资源文件