java中读取资源文件的方法

摘要:
InputStreamin=newBufferedInputStream;Propertiesp=新属性();p、 负荷;StringclassName2=p。getProperty;字符串url=p。getProperty;字符串用户=p。getProperty;字符串密码=p。getProperty;2.使用java。Resourcebundle类的util Getbundle()方法//它前面没有“/”来表示当前类E的目录xample://Thefile和class在同一个包中,请注意其文件名和后缀!!它是一个替换,ResourceBundleresource=ResourceBundle。getBundle;StringclassName=资源。getString;Stringurl=资源。getString;Stringuser=资源。getString;Stringpassword=资源。getString;3.使用java的构造函数的示例。util。PropertyResourceBundleclass://The文件位于项目或src/demo下。properties//在src/demo属性中为newFileInputStreamInputStreamin=newBufferedInputStream;ResourceBundlerb=newPropertyResourceBundle;StringclassName4=rb。getString;4.使用类变量的getresourceasstream()方法的示例:InputStreamin=Properties。班getResourceAsStream//在包点类名下。
展开全部

1.使用java.util.Properties类的load()方法


示例:

//文件在项目下。不是在包下!!

InputStream in = new BufferedInputStream(new FileInputStream("demo.properties")) ;  

Properties p = new Properties();

p.load(in) ;

String className2 = p.getProperty("database.driver");

String url = p.getProperty("database.url");

String user = p.getProperty("database.user");

String password = p.getProperty("database.pass");

java中读取资源文件的方法第1张

2. 使用java.util.Resourcebundle类的getbundle()方法  

//前面没有“/”代表当前类的目录

示例:  

//文件和类在同一个包下,注意它的文件名和后缀!!是调换的,

ResourceBundle resource = ResourceBundle.getBundle("properties.jdbc");  

String className = resource.getString("database.driver");

String url = resource.getString("database.url");

String user = resource.getString("database.user");

String password = resource.getString("database.pass");

3.使用java.util.PropertyResourceBundle类的构造函数

示例: 

// 文件在项目下  或者  src/demo.properties 

//  在 src/demo.properties  写成 new FileInputStream("src/demo.properties") 

InputStream in = new BufferedInputStream(new             FileInputStream("demo.properties")); 

ResourceBundle rb = new PropertyResourceBundle(in) ;

String className4 = rb.getString("database.url");

java中读取资源文件的方法第2张

4.使用class变量的getresourceasstream()方法

示例:   

InputStream in =Properties.class.getResourceAsStream("/properties/jdbc.properties"); 

// 包点类名下的。

// 如果找不到带有该名称的资源,则返回 null

Properties p = new Properties();

p.load(in);

System.out.println(p.getProperty("database.url")); 

java中读取资源文件的方法第3张

5.使用class.getclassloader()所得到的java.lang.classloader的getresourceasstream()方法   

// properties 文件 要放在src下面,否则找不到啊

示例:          

InputStream in = 类名.class.getClassLoader().getResourceAsStream("jdbc.properties");

Properties p = new Properties() ;

p.load(in); 

System.out.println(p.getProperty("database.pass"));

6.使用java.lang.classloader类的getsystemresourceasstream()静态方法      

示例:

// 同包名下

InputStream in = ClassLoader.getSystemResourceAsStream("properties/jdbc.properties"); 

Properties p = new Properties() ;

p.load(in) ;

System.out.println(p.getProperty("database.user"));

java中读取资源文件的方法第4张

总结:如果是 在WEB上读取properties文件,写成下面这种。上面写的那些只在 JavaSE 中

String path = Thread.currentThread().getContextClassLoader().getResource("").getPath(); 

System.out.println(path);

InputStream in = new FileInputStream(new File(path+File.separator+"mysql.properties"));

Properties prop = new Properties();

免责声明:文章转载自《java中读取资源文件的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇db2 sqlcode23-存储案例:如何降低SSD峰值延迟下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MD5加密解密以及设置salt(盐值)

MD5算法 package com.oracle.jsp.util; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * * @author wjxing * */ public class MD5 {...

Doris扩展能力 踏雪扬尘

目录 审计日志插件 Doris On ES 创建ES索引 Doris中创建ES外表 Doris output plugin Hive External Table of Doris Doris 插件框架 ODBC External Table Of Doris 调试工具 审计日志插件 Doris 的审计日志插件是在 FE 的插件框架基础上开发...

公众号第三方平台开发 component_verify_ticket和accessToken的获取

公众号第三方平台审核通过之后,微信的服务器会定时(10分钟一次)给"授权事件接收URL"发送component_verify_ticket,这里我们需要及时更新component_verify_ticket 就是下面这个链接 下面这里是我的处理函数 private void ResponseRequest() { //WX...

JAVA基础4---序列化和反序列化深入整理(JDK序列化)

一、什么是序列化和反序列化? 序列化:将对象状态信息转化成可以存储或传输的形式的过程(Java中就是将对象转化成字节序列的过程) 反序列化:从存储文件中恢复对象的过程(Java中就是通过字节序列转化成对象的过程) 二、为什么要序列化和反序列化? Java中对象都是存储在内存中,准确地说是JVM的堆或栈内存中,可以各个线程之间进行对象传输,但是无法在进程之间...

clickHouse 常用命令

---客户端链接工具clickhouse-client -m -u root -p root --大小写敏感的CREATE TEMPORARY TABLE IF NOT EXISTS test.member_new_simple2 ENGINE = Memory AS SELECT ID,user_id,member_grade,accum_amount...

layer弹出层框架alert与msg详解

layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护、不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力。目前,layer已成为国内最多人使用的web弹层组件,GitHub自然Stars3000+,官网累计下载量达30w+,大概有20万Web平台正在使用layer。    ...