加载配置文件的四种方式
来源:互联网 发布:淘宝女人秋装 编辑:程序博客网 时间:2024/06/02 01:58
- package day01;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.util.Properties;
- /**
- * 测试配置文件的读取-config.properties
- * 读取资源文件的多种方式(四种)
- */
- public class JDBCDemo2 {
- public static void main(String[] args) {
- InputStream is = null;
- FileInputStream fis = null;//用于读取根目录下的配置文件
- try{
- //使用Properties去读取配置文件(建议采用第一种万能的方式来读取资源文件)
- Properties p = new Properties();
- /**
- * 第一种方式: 用类加载器读取资源文件
- * 适用情形:资源文件和类文件在不在同一目录都可以
- * 注意:getResourceAsStream里的参数要写资源文件的全限定路径,
- * 包名+文件名且开头千万不要写"/"
- */
- is = JDBCDemo2.class.getClassLoader().
- getResourceAsStream("wq/config.properties");//包名+文件名
- /**
- * 第二种方式: 用类加载器读取资源文件
- */
- // is = new FileInputStream("./src/day01/config.properties");//绝对路径(也可使用相对路径)
- /**
- * 第三种方式:用class.getResourceAsStream()(其实还是用的类加载器)
- * (1)适用情形:如果资源文件和类文件在同一包下,直接写资源文件的名称就行了,
- * 注意:资源文件的名称前面不需要加“/”
- *
- * (2)若资源文件和类文件不在同一个目录下的情况
- * 注意:开头一定要加上”/“
- *
- */
- // is = JDBCDemo2.class.getResourceAsStream("config.properties");
- // is = JDBCDemo2.class.getResourceAsStream("/wq/config.properties");//(/包名+类名)
- /**
- * 第四种方式:若配置文件位于根目录下,用FileInputStream流来读取文件,再调用p.load()方法
- */
- // fis = new FileInputStream("config.properties");//注意关闭fis流
- // p.load(fis);
- p.load(is);//p.load(InputStream/InputReader)可传入的参数为字节流或字符流
- String driver = p.getProperty("driver").trim();
- String url = p.getProperty("url").trim();
- String user = p.getProperty("user").trim();
- String password = p.getProperty("password").trim();
- System.out.println(driver+"\n"+url+"\n"+user+"\n"+password);
- }catch(Exception e){
- e.printStackTrace();
- }finally{
- //通过Properties读取文件(通过流读取)后,应该关闭流(抛出异常)
- try {
- is.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- }
- /**
- * 总结:1.若配置文件在src目录下,则采用FileInputStream fis= new FileInputStream("文件名称");
- * 调用p.load(fis)加载即可,最后关闭流
- *
- * 2.若文件在其他目录下,src或者其他(例如:resource)路径下,则可以通过
- * InputStream is = 类名.class.getClassLoader().getResourceAsStream("包名/文件名");
- * 调用p.load(is)加载即可,最后关闭流
- */
测试结果如下:
- oracle.jdbc.driver.OracleDriver
- jdbc:oracle:thin:@localhost:1521:orcl
- scott
- jsd161102
阅读全文
0 0
- 加载配置文件的四种方式
- 加载配置文件的四种方式
- 加载配置文件的方式
- Spring加载配置文件的两种方式
- Spring加载配置文件的三种方式
- spring加载配置文件的几种方式
- hibernate加载配置文件的两种方式
- java加载配置文件的三种方式
- Java 加载配置文件的方式
- spring加载配置文件的方式
- Java 加载配置文件的方式
- spring加载配置文件的方式
- Java 加载配置文件的方式
- Java 加载配置文件的方式
- spring 加载配置文件的方式
- android: activitity 的四种加载方式
- Android Activity的四种加载方式
- Android的四种加载方式
- C++笔记_03面向对象3
- 《.NET 设计规范》第 8 章:使用规范
- JVM内存模型之方法区
- python操作数据库
- hdu-6170 Two strings
- 加载配置文件的四种方式
- “NODE_ENV” is not recognized as an internal or external command
- Linux下的图片编辑软件和画图软件
- c/c++整理析构函数
- C++笔记_03面向对象4
- Python3爬虫下载pdf(一)
- POJ 1986 RMQ+LCA
- 1.数码相框之框架
- 【Java】输入指定格式的邮箱(正则表达式)