
1、先讲一下怎么读取项目内的配置文件,properties文件,里面有两个键值对name:爬楼高手和age:37。
2、然后在JAVA代码中初始化PropertiesProperties pro =new Properties()。
3、然后调用load方法读取项目中的properties文件:proload(new InputStreamReaderObjectclass。
4最后使用getProperty方法根据key来获取对应的value值progetProperty("name")。
5、读取放在D盘的一个properties文件。
6、本地的properties文件同样需要配置字符集,不然会出现乱码。
7、和读取项目中文件一样,new一个Porperties对象,然后调用load方法,通过key获取对应的值就行了propertiesload(new InputStreamReader(new BufferedInputStream。
在pomxml文件中,profile是一个特殊的元素,它可以用来定义项目的特定环境和配置。properties文件不能读取pom文件中的profile,因为properties文件是一种键值对格式的文本文件,而profile是XML格式的元素。
1使用javautilProperties类的load()方法
示例:
//文件在项目下。不是在包下!!
InputStream in = new BufferedInputStream(new FileInputStream("demoproperties")) ;
Properties p = new Properties();
pload(in) ;
String className2 = pgetProperty("databasedriver");
String url = pgetProperty("databaseurl");
String user = pgetProperty("databaseuser");
String password = pgetProperty("databasepass");
2 使用javautilResourcebundle类的getbundle()方法
//前面没有“/”代表当前类的目录
示例:
//文件和类在同一个包下,注意它的文件名和后缀!!是调换的,
ResourceBundle resource = ResourceBundlegetBundle("propertiesjdbc");
String className = resourcegetString("databasedriver");
String url = resourcegetString("databaseurl");
String user = resourcegetString("databaseuser");
String password = resourcegetString("databasepass");
3使用javautilPropertyResourceBundle类的构造函数
示例:
// 文件在项目下 或者 src/demoproperties
// 在 src/demoproperties 写成 new FileInputStream("src/demoproperties")
InputStream in = new BufferedInputStream(new FileInputStream("demoproperties"));
ResourceBundle rb = new PropertyResourceBundle(in) ;
String className4 = rbgetString("databaseurl");
4使用class变量的getresourceasstream()方法
示例:
InputStream in =PropertiesclassgetResourceAsStream("/properties/jdbcproperties");
// 包点类名下的。
// 如果找不到带有该名称的资源,则返回 null
Properties p = new Properties();
pload(in);
Systemoutprintln(pgetProperty("databaseurl"));
5使用classgetclassloader()所得到的javalangclassloader的getresourceasstream()方法
// properties 文件 要放在src下面,否则找不到啊
示例:
InputStream in = 类名classgetClassLoader()getResourceAsStream("jdbcproperties");
Properties p = new Properties() ;
pload(in);
Systemoutprintln(pgetProperty("databasepass"));
6使用javalangclassloader类的getsystemresourceasstream()静态方法
示例:
// 同包名下
InputStream in = ClassLoadergetSystemResourceAsStream("properties/jdbcproperties");
Properties p = new Properties() ;
pload(in) ;
Systemoutprintln(pgetProperty("databaseuser"));
总结:如果是 在WEB上读取properties文件,写成下面这种。上面写的那些只在 JavaSE 中
String path = ThreadcurrentThread()getContextClassLoader()getResource("")getPath();
Systemoutprintln(path);
InputStream in = new FileInputStream(new File(path+Fileseparator+"mysqlproperties"));
Properties prop = new Properties();
public class Config {
//Properties继承于HashMap key:value都是String类型
private Properties table=new Properties();
public Config(String file){
try{
tableload(new FileInputStream(file));
}catch (IOException e){
eprintStackTrace();
throw new RuntimeException(e);
}
}
public int getInt(String key){
return IntegerparseInt(tablegetProperty(key));
}
public String getString(String key){
return tablegetProperty(key);
}
public double getDouble(String key){
return DoubleparseDouble(tablegetProperty(key));
}
}
以上就是关于properties文件怎么打开啊全部的内容,包括:properties文件怎么打开啊、properties文件读不到pom文件的profile、JAVA中如何读取src下所有的properties文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)