说说我的项目中的情况吧:
配置文件“weblogic11gproperties”保存在WEB-INFO目录下,和webxml在同一个目录下。
一个JavaBean专门用于读取配置文件的内容:
public class PropertiesIO {
private String fileName = null;
public PropertiesIO(String fileName){
thisfileName = getClass()getClassLoader()getResource("/")getPath() + "\\" + fileName;
}
public String getValue(String key){
try{
InputStream in = new FileInputStream(fileName);
Properties prop = new Properties();
propload(in);
inclose();
return propgetProperty(key);
}
catch(Exception err){
errprintStackTrace();
return null;
}
}
}
重点说明:getClass()getClassLoader()getResource("/")会得到当前项目下的“WEB-INF\classes”目录,即JavaBean的class文件的根目录,
getClass()getClassLoader()getResource("/")getPath() + "\\" + fileName
就会得到当前项目下的“WEB-INF\weblogic11gproperties”文件。
getValue()是根据键值得到相应配置项的内容,这样就简单了。
你的properties文件编译过了吗?凡是有非西欧的字符都应该事先编译的,具体方法如下:
比如你有一个1properties文件(含有非西欧字符),你可以在cmd窗口中切换到1properties文件所在目录,然后输入native2ascii
-reverse
-encoding
gb2312
1properties
ActionName_zh_CNproperties
1properties为转换之前的文件名
ActionName_zh_CNproperties为转换之后的文件名,其中-encoding后面的gb2312是可以变的如
utf-8等
<util:properties id="config" location="classpath:testproperties" />
其中id为读取文件以后的bean id,可以通过这个id获取文件中对应属性的值,如configtest代表获取文件中test属性的值
于是把properties文件提到jar包统计目录,这样修改后不用重新打包了,用起来方便一点。代码如下:String proFilePath = SystemgetProperty(userdir) + \\filenameproperties;InputStream in = new BufferedInputStream(new FileInputStream(proFilePath));
Java读取properties文件的方法比较多; 在最常用的读取properties文件的方式--->“通过javalangClass类的getResourceAsStream(String name) 方法来实现”; 代码: InputStream in = getClass()getResourceAsStream("资源Name");
两种办法 第一: File f = new File(thisgetClass()getResource("/")getPath());
f = new File(fgetPath() + "/conf/configproperties");
注:fgetPath()即为当class所在的绝对路径。如:c:\javasrc\web-inf\classes
然后,对文件对象进行处理,就能把配置信息读取出来了,但是加入如上class被打包成jar文件,那么,在程序执行到这里时,就会无法找到配置文件,那么该如何处理呢?
处理方法如下:
String s_config="conf/configproperties";
File file= new File(StringvalueOf(ClassLoadergetSystemResource(config)));
String filepaths= filegetPath(); 第二:用JarFile JarFile jarFile = new JarFile("thefilejar"); 这个是专门用来读jar文件的
以上就是关于java读取properties配置文件路径问题全部的内容,包括:java读取properties配置文件路径问题、java程序读取properties配置文件出现中文乱码、java web项目 web.xml中如何读取properties配置文件中的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)