用ServletContext读取资源文件的三种方式
来源:互联网 发布:淘宝客服培训ppt 编辑:程序博客网 时间:2024/04/29 11:27
package www.csdn.net.sevlete;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Enumeration;
import java.util.Properties;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//用ServletContext读取资源文件的三种方式
public class UserServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
public void test1(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//传统方式
File files=new File("F://db.properties");
InputStream is =new FileInputStream(files);
Properties prop=new Properties();
prop.load(is);
//获取所有的name 名称
Enumeration<String> enums=(Enumeration<String>) prop.propertyNames();
//遍历
while(enums.hasMoreElements()){
//获取名称
String key=enums.nextElement();
String value=prop.getProperty(key);
System.out.println(key+":::::"+value);
}
}
//第一种方式
public void text2(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取SerlvetContext对象
ServletContext context = this.getServletConfig().getServletContext();
//(1)获取上下文路径 /项目名称 /day34
String contextPath = context.getContextPath();
//创建文件
File file1=new File(contextPath, "/WEB-INF/classes/db.properties");
//(2)获取服务器端的绝对路径
String realPath=context.getRealPath("/WEB-INF/classes/db.properties");
//创建文件
File file2=new File(realPath);
//打印 不成立,不能使用
//displayProps(new FileInputStream(file1));
//打印
displayProps(new FileInputStream(file2));
}
//第二种方式
public void test3 (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取SerlvetContext对象
ServletContext context = this.getServletConfig().getServletContext();
displayProps(context.getResourceAsStream("/WEB-INF/classes/db.properties"));
}
//第三种方式
public void test4 (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取SerlvetContext对象
ServletContext context = this.getServletConfig().getServletContext();
URL url=context.getResource("/WEB-INF/classes/db.properties");
System.out.println(url.getPath());
System.out.println(url.getFile());
}
public void test(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 读取该文件
File file = new File("src//db.properties");
// 是我访问没有问题,而你尼?
File files = new File("c://db.properties");
// 转换成输入流 对象
InputStream is = new FileInputStream(file);
//调用方法
displayProps(is);
}
/**
* 遍历Properties集合中的数据
* @param is
* @throws IOException
*/
public void displayProps(InputStream is) throws IOException {
// 创建.properties操作的集合对象
Properties prop = new Properties();
// 把流对象载入
prop.load(is);
// 获取所有name名称
Enumeration<String> enums = (Enumeration<String>) prop.propertyNames();
// 遍历
while (enums.hasMoreElements()) {
// 获取名称
String key = enums.nextElement();
String value = prop.getProperty(key);
System.out.println(key + ":::" + value);
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.Enumeration;
import java.util.Properties;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//用ServletContext读取资源文件的三种方式
public class UserServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
public void test1(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//传统方式
File files=new File("F://db.properties");
InputStream is =new FileInputStream(files);
Properties prop=new Properties();
prop.load(is);
//获取所有的name 名称
Enumeration<String> enums=(Enumeration<String>) prop.propertyNames();
//遍历
while(enums.hasMoreElements()){
//获取名称
String key=enums.nextElement();
String value=prop.getProperty(key);
System.out.println(key+":::::"+value);
}
}
//第一种方式
public void text2(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取SerlvetContext对象
ServletContext context = this.getServletConfig().getServletContext();
//(1)获取上下文路径 /项目名称 /day34
String contextPath = context.getContextPath();
//创建文件
File file1=new File(contextPath, "/WEB-INF/classes/db.properties");
//(2)获取服务器端的绝对路径
String realPath=context.getRealPath("/WEB-INF/classes/db.properties");
//创建文件
File file2=new File(realPath);
//打印 不成立,不能使用
//displayProps(new FileInputStream(file1));
//打印
displayProps(new FileInputStream(file2));
}
//第二种方式
public void test3 (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取SerlvetContext对象
ServletContext context = this.getServletConfig().getServletContext();
displayProps(context.getResourceAsStream("/WEB-INF/classes/db.properties"));
}
//第三种方式
public void test4 (HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//获取SerlvetContext对象
ServletContext context = this.getServletConfig().getServletContext();
URL url=context.getResource("/WEB-INF/classes/db.properties");
System.out.println(url.getPath());
System.out.println(url.getFile());
}
public void test(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 读取该文件
File file = new File("src//db.properties");
// 是我访问没有问题,而你尼?
File files = new File("c://db.properties");
// 转换成输入流 对象
InputStream is = new FileInputStream(file);
//调用方法
displayProps(is);
}
/**
* 遍历Properties集合中的数据
* @param is
* @throws IOException
*/
public void displayProps(InputStream is) throws IOException {
// 创建.properties操作的集合对象
Properties prop = new Properties();
// 把流对象载入
prop.load(is);
// 获取所有name名称
Enumeration<String> enums = (Enumeration<String>) prop.propertyNames();
// 遍历
while (enums.hasMoreElements()) {
// 获取名称
String key = enums.nextElement();
String value = prop.getProperty(key);
System.out.println(key + ":::" + value);
}
}
}
- 用ServletContext读取资源文件的三种方式
- ServletContext读取资源的三种方式
- ServletContext读取资源的三种方式
- ServletContext对象读取资源路径的三种方式
- 读取资源文件的三种方式
- ServletContext中getRealPath()读取文件及其他三种读取文件的方式及其区别
- ServletContext读取资源文件
- ServletConfig----ServletContext----ServletResponse----获取资源路径的三种方式
- servlet读取资源文件的三种方式
- 读取资源(配置)文件的三种方式
- Servlet读取资源文件的三种方式
- servlet读取资源文件的三种方式
- 【JSP开发】用ServletContext读取资源文件
- ServletContext加载资源文件的方式
- ServletContext对象读取资源文件
- 04.ServletContext读取资源文件
- servletcontext读取web资源文件
- 使用servletContext读取资源文件
- Git详解之一 Git起步
- POJ 1364 King
- Git详解之二 Git基础
- MFC加载图标,位图。LoadImage LoadIcon, LoadBitmap
- sdcare文件的操作
- 用ServletContext读取资源文件的三种方式
- 静态分析工具及使用总结(二)CheckStyle
- 采用AT88SC系列芯片进行系统加密的原理
- C++虚函数解析
- Spring tool suite编译不通过:Access restriction: The type XXX is not accessible
- Android系统架构工具
- 静态分析工具及使用总结(三)
- WORD2003相关问题
- 玩转Google开源C++单元测试框架Google Test系列(gtest)(总)