这篇文章主要介绍了Java中的几种读取properties配置文件的方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
相信对于一名JAVA开发者开说properties文件一定再熟悉不过了,比如一下配置:
config.properties会经常存放一些系统常量,版本号,路径之类的
database.properties存放数据库的连接参数
log4j.properties 日志的一些基本配置
redis.properties 缓存数据库的一些配置
当然前缀是根据用能自行定义的,一般来说文件的内容的格式是“键=值”的格式,文本注释信息可以用”#”来注释,下面来说说开发中如何读写properties配置文件。
Java读取Properties文件
Properties类读取
Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值对的形式来保存属性集。不过Properties有特殊的地方,就是它的键和值都是字符串类型。
//方式一 InputStream in = new BufferedInputStream(new FileInputStream("文件路径名")); Properties p = new Properties(); p.load(in); System.out.println(p.getProperty("version")); //方式二 InputStream ins = PropertiesUtil.class.getResourceAsStream("文件路径名"); Properties ps = new Properties(); ps.load(ins); System.out.println(ps.getProperty("version")); //方式三 InputStream inss = PropertiesUtil.class.getClassLoader().getResourceAsStream("文件名"); Properties pss = new Properties(); pss.load(inss); System.out.println(pss.getProperty("version")); //方式四 InputStream insss = ClassLoader.getSystemResourceAsStream("文件名"); Properties psss = new Properties(); psss.load(insss); System.out.println(pss.getProperty("version"));
ResourceBundle读取方式
这个类提供软件国际化的捷径。通过此类,可以使您所编写的程序可以:
轻松地本地化或翻译成不同的语言
一次处理多个语言环境
以后可以轻松地进行修改,支持更多的语言环境
说的简单点,这个类的作用就是读取资源属性文件(properties),然后根据.properties文件的名称信息(本地化信息),匹配当前系统的国别语言信息(也可以程序指定),然后获取相应的properties文件的内容。
使用这个类,要注意的一点是,这个properties文件的名字是有规范的:一般的命名规范是: 自定义名语言代码国别代码.properties,如果是默认的,直接写为:自定义名.properties
比如:
myres_en_US.properties
myres_zh_CN.properties
myres.properties
//方式五 ResourceBundle rb = ResourceBundle.getBundle("文件名前缀", Locale.getDefault()); System.out.println(rb.getObject("version")); //方式六 InputStream is = new BufferedInputStream(new FileInputStream("文件名前缀")); ResourceBundle rbs = new PropertyResourceBundle(is); System.out.println(rbs.getObject("version"));
ResourceBundle读取方式,相对来说比较方便,但是仔细查看源码,ResourceBundle读取一次就会被系统缓存。
对于在生产环境中,如果我们要动态修改properties的一些参数,如果使用ResourceBundle读取方式就必须要重启服务器了。
【相关推荐】
1. 特别推荐:“php程序员工具箱”V0.1版本下载
2. Java免费视频教程
3. 全面解析Java注解
以上是Java获取Properties文件内容的四种方式的详细内容。更多信息请关注PHP中文网其他相关文章!

JVM的工作原理是将Java代码转换为机器码并管理资源。1)类加载:加载.class文件到内存。2)运行时数据区:管理内存区域。3)执行引擎:解释或编译执行字节码。4)本地方法接口:通过JNI与操作系统交互。

JVM使Java实现跨平台运行。1)JVM加载、验证和执行字节码。2)JVM的工作包括类加载、字节码验证、解释执行和内存管理。3)JVM支持高级功能如动态类加载和反射。

Java应用可通过以下步骤在不同操作系统上运行:1)使用File或Paths类处理文件路径;2)通过System.getenv()设置和获取环境变量;3)利用Maven或Gradle管理依赖并测试。Java的跨平台能力依赖于JVM的抽象层,但仍需手动处理某些操作系统特定的功能。

Java在不同平台上需要进行特定配置和调优。1)调整JVM参数,如-Xms和-Xmx设置堆大小。2)选择合适的垃圾回收策略,如ParallelGC或G1GC。3)配置Native库以适应不同平台,这些措施能让Java应用在各种环境中发挥最佳性能。

Osgi,Apachecommonslang,JNA和JvMoptionsareeForhandlingForhandlingPlatform-specificchallengesinjava.1)osgimanagesdeppedendendencenciesandisolatescomponents.2)apachecommonslangprovidesitorityfunctions.3)

JVMmanagesgarbagecollectionacrossplatformseffectivelybyusingagenerationalapproachandadaptingtoOSandhardwaredifferences.ItemploysvariouscollectorslikeSerial,Parallel,CMS,andG1,eachsuitedfordifferentscenarios.Performancecanbetunedwithflagslike-XX:NewRa

Java代码可以在不同操作系统上无需修改即可运行,这是因为Java的“一次编写,到处运行”哲学,由Java虚拟机(JVM)实现。JVM作为编译后的Java字节码与操作系统之间的中介,将字节码翻译成特定机器指令,确保程序在任何安装了JVM的平台上都能独立运行。

Java程序的编译和执行通过字节码和JVM实现平台独立性。1)编写Java源码并编译成字节码。2)使用JVM在任何平台上执行字节码,确保代码的跨平台运行。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3汉化版
中文版,非常好用

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具