- 浏览: 176679 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
surfingll:
思路不错,赞一个
站内信的实现:数据库的设计 -
shakajava:
哎,都是千篇一律的东西
站内信的实现:数据库的设计 -
java_xiaoyi:
不错...
java API -
tonysmith:
兄弟说的太对了。干活用了一年多,考官一问,只知其一。这是个“杯 ...
Java 中的访问权限控制 -
上官车月:
像牛一样的干了一年多,除了工作和加班 还真没有想过,基础的东西 ...
Java 中的访问权限控制
使用J2SE读取Properties文件的六种方式:
1.使用java.util.Properties类的load()方法:
- InputStream in = new BufferedInputStream(new FileInputStream(FILENAME));
- Properties p = new Properties();
- p.load(in);
InputStream in = new BufferedInputStream(new FileInputStream(FILENAME)); Properties p = new Properties(); p.load(in);
2.使用java.util.ResourceBunld类的getBundle()方法:
ResourceBundle rb = ResourceBundle.ResourceBundle.getBundle(FILENAME,Locale.getDefault())
3.使用PropertyResourceBundle
- InputStream in = new BufferedInputStream(new FileInputStream(name));
- ResourceBundle rb = new PropertyResourceBundle(in);
InputStream in = new BufferedInputStream(new FileInputStream(name)); ResourceBundle rb = new PropertyResourceBundle(in);
4.使用Class类的getResourceAsStream(String name)
5.使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法
6.使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法
下面转自:http://blog.csdn.net/bincavin/archive/2010/03/09/5359047.aspx
通常,在实际项目中,为了便于配置管理,我们需要将一些配置管理信息存储在.properties文件中,然后直接从中读取,这样就避免了很多硬编码。下面,通过一个例子,详细讲解如何读取.properties文件的数据。
1.建立一个包config,专门存放.properties等配置文件,在config包下建一个文件a.properties,为了便于测试,在a.properties下添加如下信息:
name=kaka
age=28
2.建立一个包prop,用来测试。在prop包下建立LoadProp.java文件。
3.有很多方法来读取.properties文件,现将主要方法罗列出来:
a.通过class的getResourceAsStream()方法来读取
- package prop;
- import java.io.IOException;
- import java.io.InputStream;
- import java.util.Properties;
- public class LoadProp {
- public static void main(String[] args) {
- LoadProp loadProp = new LoadProp();
- InputStream in = loadProp.getClass().getResourceAsStream("/config/a.properties");
- Properties prop = new Properties();
- try {
- prop.load(in);
- } catch (IOException e) {
- e.printStackTrace();
- }
- System.out.println(prop.getProperty("name", "none"));
- System.out.println(prop.getProperty("age", "none"));
- }
- }
package prop; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class LoadProp { public static void main(String[] args) { LoadProp loadProp = new LoadProp(); InputStream in = loadProp.getClass().getResourceAsStream("/config/a.properties"); Properties prop = new Properties(); try { prop.load(in); } catch (IOException e) { e.printStackTrace(); } System.out.println(prop.getProperty("name", "none")); System.out.println(prop.getProperty("age", "none")); } }
一定要注意的是,class里的getResourceAsStream()方法里参数的类路径一定要在前面加上"/",否则会报错
b.使用class的getClassLoader()方法所得的ClassLoader的getResourceAsStream()来读取 package prop;
- import java.io.IOException;
- import java.io.InputStream;
- import java.util.Properties;
- public class LoadProp {
- public static void main(String[] args) {
- LoadProp loadProp = new LoadProp();
- InputStream in = loadProp.getClass().getClassLoader().getResourceAsStream("config/a.properties");
- Properties prop = new Properties();
- try {
- prop.load(in);
- } catch (IOException e) {
- e.printStackTrace();
- }
- System.out.println(prop.getProperty("name", "none"));
- System.out.println(prop.getProperty("age", "none"));
- }
- }
import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class LoadProp { public static void main(String[] args) { LoadProp loadProp = new LoadProp(); InputStream in = loadProp.getClass().getClassLoader().getResourceAsStream("config/a.properties"); Properties prop = new Properties(); try { prop.load(in); } catch (IOException e) { e.printStackTrace(); } System.out.println(prop.getProperty("name", "none")); System.out.println(prop.getProperty("age", "none")); } }
ClassLoader的getResourceAsStream()方法与Class的getResourceAsStream()方法有点区别,在这里一定不要在类路径前面加上"/",否则会报错,是不是很奇怪。
c.使用ResourceBundle来读取
- package prop;
- import java.util.ResourceBundle;
- public class LoadProp {
- public static void main(String[] args) {
- ResourceBundle rb = ResourceBundle.getBundle("config/a");
- System.out.println(rb.getString("name"));
- System.out.println(rb.getString("age"));
- }
- }
package prop; import java.util.ResourceBundle; public class LoadProp { public static void main(String[] args) { ResourceBundle rb = ResourceBundle.getBundle("config/a"); System.out.println(rb.getString("name")); System.out.println(rb.getString("age")); } }
注意,getBundle()方法里的参数,是baseName,不要把后缀名写出来,并且不要加"/"。
好了,这是读取.properties文件的几种主要方法,还有其他的方法,基本上都大同小异。另外,在Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法来读取.properties文件,这里就不详述了。
发表评论
-
HashMap HashTable区别
2012-03-05 15:52 1176我想先问一个问题:为什么hashmap允许key可以为null ... -
字符串比较之 “==”和 “equals”
2012-03-05 13:04 917字符串比较之 “==”和 “equals” 提示:引用 ... -
介绍一下抽象类和接口的异同
2012-03-02 16:27 1121我把基本的弄成了表格形式的。下载附件吧。本想吧table co ... -
Java 中的上转型对象 使用
2012-03-02 15:34 5563呵呵。最近交接工作比较闲,顺便温习一下基础的知识吧: 今天看 ... -
最好的学习地址:Java开源框架SSH 和 ANT的学习地址
2012-02-29 15:44 1076给大家推荐一个我经常去看的网站:这个网站适合初级程序员,学生, ... -
Java 中的访问权限控制
2012-02-29 15:39 2146要辞职了,突然觉得这 ... -
JDK和JRE的区别
2012-02-29 12:17 1180<!--end: blogStats -->< ... -
Java 接口学习笔记
2012-02-26 02:23 3java语言不支持一个类有多个直接的父类(多继承),但可以实现 ... -
浅谈HTTP中Get与Post的区别(转)
2012-02-15 12:24 1217浅谈HTTP中Get与Post的区别 Http ... -
JDK中的URLConnection参数详解(转)
2012-02-15 11:51 1368JDK中的URLConnection参数 ... -
Java利用HttpURLConnection发送post请求上传文件
2012-02-14 10:58 2203在页面里实现上传文件不是什么难事,写个form,加上encty ... -
Java 存储过程 Mysql
2011-12-20 12:16 1346一:Java如何实现对存储过程的调用: A:不带输出参数的 ... -
spring jdbcTemplate
2011-12-08 11:08 1018先看applicationContext.xml配置文件: ... -
MyEclipse 8.6 download 官方下载地址
2011-12-07 14:28 1458Downloads: MyEclipse 8.6 for Ec ... -
windows下架设svn服务器
2011-12-07 11:36 951* 传统的Subversion 服务器 ... -
tomcat7.0 manager app和host manager web管理(转)
2011-12-07 11:23 10865在捣腾Tomcat 7的时候遇到一个问题,很多人对tomc ... -
Tomcat7.0 Error:java.lang.NoClassDefFoundError
2011-12-07 10:34 1322前面一段时间看到Tomcat7.0发布了几个测试版,由于没有稳 ... -
tomcat5.5 Error:cannot find the declaration of element 'web-app'
2011-12-05 12:01 2128tomcat 启动:cannot find the decla ... -
设置 session 失效时间的方法(转)
2011-09-21 09:57 1248具体设置很简单,方法有三种: (1) 在主页面或者公共页 ... -
Java读取properties文件的思考
2011-07-19 10:24 1030Java读取properties文件的思考 Java读 ...
相关推荐
以上就是使用J2SE API读取Properties文件的六种方法,每种方法都有其适用的场景,开发者应根据实际需求选择合适的方式。在处理Properties文件时,注意异常处理和资源关闭,确保程序的健壮性和效率。
以上介绍了六种使用J2SE API读取Properties文件的方法,每种方法都有其适用场景。开发者可以根据实际需求选择最适合的方式来加载配置文件。需要注意的是,在处理输入流时,一定要确保及时关闭它们,避免资源泄露的...
本文将详细介绍六种使用J2SE API(Java标准版API)来读取Properties文件的方法,帮助开发者更好地理解和操作这类文件。 1. 使用Properties类的load()方法 这是最基础且常用的方法,直接通过InputStream读取...
### API读取Properties文件的六种方法 在Java开发中,`Properties` 文件常用于存储配置信息,如数据库连接字符串、应用配置等。通过API读取这些文件是开发者经常遇到的任务之一。本文将详细介绍六种使用J2SE API...
总之,无论是Web环境还是J2SE环境,读取配置文件都是通过`java.util.Properties`类来实现的。Web环境下,我们通常依赖类加载器来定位文件;而在J2SE环境下,我们可以直接使用文件路径。理解并掌握这两种方法,对于...
Properties类在J2SE中用于存储配置信息,它继承了Hashtable类,可以处理键值对的数据,并且支持文本格式的输入输出,通常用于保存和读取应用程序的配置参数。 标题中提到的"提供j2me使用的优化过的Properties源码...
"使用J2SE API读取Properties文件的六种方法.txt"可能详细列举了从Java标准版库(J2SE)中加载和操作Properties文件的不同方式,包括InputStream、Properties类的方法等。 6. **flashplayer-win.zip**: 这可能是...
Java中的Properties类是Java语言用来处理属性列表的工具类,它是HashTable的子类,主要用于读取和存储配置文件中的键值对数据。这些配置文件通常用于存储应用的配置信息,如数据库连接字符串、系统参数等。...
要深入了解SimpleConfig的工作原理和使用方式,你需要解压文件并查看源代码、测试代码以及任何相关的文档。这将提供一个实际的示例,帮助你理解如何在Java项目中创建和管理配置,同时也能学习到自定义框架的设计和...
它可以读取.properties格式的文件,进行国际化处理。通过`load()`方法加载文件,`getProperty()`方法获取属性值,`setProperty()`设置属性,`store()`方法则可以将属性保存到文件。 2. **super关键字**: super...
感觉:因为derby是纯Java的数据库,因此与应用可以无缝连接,它支持中文、图片的存贮与读取等。是一个非常好客户端数据库。该数据数应该为J2ME编程带来非常大的好处,同时也为J2SE和J2EE编程来带方便。
Quartz 的调度方式有两种:编程式和配置式。编程式调度允许你在代码中直接创建和安排 Jobs,这适合于任务调度需求比较灵活或者需要在运行时动态调整的情况。配置式调度则通过一个名为 `quartz_jobs.xml` 的配置文件...
13 Properties属性文件 第5章 字符串 5. 1 使用String 5. 2 基本数据类型与字符串的转化 5. 3 判断Java标识符 5. 4 使用StringBuffer 5. 5 IP地址转化成整数 5. 6 18位身份证格式验证 ...
Java提供多种方式实现数据存储,如使用Properties类保存键值对,或者利用序列化机制将对象状态保存到文件中。当用户关闭并重新打开【心兰记事本】时,程序可以读取这些存储的样式信息,恢复到用户上次编辑时的状态。...
在Tomcat环境下,连接池通常使用Apache Commons DBCP(Database Connection Pool)来管理数据库连接。默认情况下,DBCP会直接读取配置文件中的用户名和密码,这意味着这些信息是以明文形式存在的。一旦服务器被非法...
开发者需将解压后的`aliyun-sdk-java-online_standard-20141120.jar`文件添加到项目构建路径中,例如在Eclipse中,通过右键点击工程 -> Properties -> Java Build Path -> Libraries -> Add External JARs进行导入。...
8. **文件操作**:项目可能包含读取和保存配置文件的代码,比如数据库连接信息,这些信息可能以XML或properties文件的形式存储。 9. **设计模式**:在编写源码时,开发者可能应用了一些常见的设计模式,如单例模式...
这个“javamail-1_4.zip”文件包含的是JavaMail 1.4版本的源代码、API文档和其他相关资源,使得开发者能够在J2SE环境中开发与邮件相关的应用,而无需额外安装。J2EE平台虽然自身集成了邮件服务支持,但对于J2SE环境...