导航:首页 > 编程语言 > java修改properties

java修改properties

发布时间:2022-09-24 22:44:30

A. javaweb 修改properties文件中的属性值

String realPath1 = getServletContext().getRealPath("/");//这样你就得到了 你的CLASS目录 然后再拼装即可 试用于非WAR包
String realPath2 = getServletContext().getResource("/").getPath();//试用于所有
上面的都是获取到了CLASS目录 也就是你工程编译后的目录 然后再根据目录层级拼装即可
注意 web项目部署到服务器后 用你之前的方式是拿不到文件的 因为部署到服务器上面后的目录都变了 而且文件都放入CLASS目录下面了 所以你那错的

B. java 修改properties文件 顺序乱掉

java的Properties类继承自HashTable。HashTable都很熟悉,这是一个存放键值对,基于hash表存储的,所以说顺序也是不固定的。因此只要使用java自带的Properties工具类读写properties文件的都是顺序不可预知的。如果想实现有顺序的方式可以自定义一个类,使用LinkedHashMap做为父类来实现,这样效率就没那么高了。

使用有顺序的键值对的方式存储数据推荐使用jdk中提供的LinkedHashMap。这个工具类是基于链表的形式存储键值对数据。存放的数据和获取的顺序都是一致的。

C. java修改properties文件 丢失内容

我注意到你写的这句FileOutputStream fos=new FileOutputStream(resourceFile);运行时会马上覆盖掉原有的内容,因此你这句话应该移到将键值对载入完成后。


修改如下,测试通过。


/**
*新增或修改资源文件的内容
*
*@paramresourceFile
*资源文件(绝对路径+文件名,不需要.properties后缀)
*@paramkey键
*@paramvalue值
*/
publicstaticvoidsetString(StringresourceFile,Stringkey,Stringvalue){

Propertiesprop=newProperties();
try{
if(resourceFile.indexOf(".properties")==-1){
resourceFile+=".properties";
}
FileInputStreamfis=newFileInputStream(resourceFile);
try{
prop.load(fis);
fis.close();
prop.setProperty(key,value);
FileOutputStreamfos=newFileOutputStream(resourceFile);
prop.store(fos,"CopyrightThcic");
fos.close();
}catch(IOExceptione){
e.printStackTrace();
System.out.println("修改资源文件:"+resourceFile+"异常!msg:"+e.getMessage());
}

}catch(FileNotFoundExceptione){
e.printStackTrace();
System.out.println("无法获得资源文件:"+resourceFile);
}
}

D. java web启动时修改并重新加载properties文件

大兄弟,我这儿有一个,你参考一下,但是输出流问题,没有得到解决。因为src在项目布置到tomcat上会消失的,所以你看看能不能解决?

E. JAVA中如何重新加载.properties文件,使其他引用实时改变

*Spring提供的PropertiesLoaderUtils允许您直接通过基于类路径的文件地址加载属性资源

*最大的好处就是:实时加载配置文件,修改后立即生效,不必重启

*/
privatestaticvoidspringUtil(){
Propertiesprops=newProperties();
while(true){
try{
props=PropertiesLoaderUtils.loadAllProperties("message.properties");
for(Objectkey:props.keySet()){
System.out.print(key+":");
System.out.println(props.get(key));
}
}catch(IOExceptione){
System.out.println(e.getMessage());
}
try{
Thread.sleep(5000);
}catch(InterruptedExceptione){
e.printStackTrace();
}
}
}

F. java web程序注解读取properties文件,每次修改都需要重启服务器,怎么解决

你是不是用了类似maven的管理工具
然后修改的是src下面的,target也要修改才行

G. java怎么用java修改.properties文件键值,文件在java包中。我能读到这个文件。但无法修改

读出来后用set方法修改属性,然后再用Properties 的save方法保存修改 并且覆盖原来的info.properties文件不就行了。不过save方法用的输出流 需要用filewriter写入/com/zst/warning/config/info.properties文件。
web项目应该没问题,如果是java应用程序打成jar包后的话就比较麻烦了。要先解压修改了以后还要再重新打包

H. java修改通过读取连接数据库的properties文件之后如何让其生效

用线程监控文件是否被修改,若修改:

  1. properties文件配置参数在系统中以系统属性存在就直接重设属性

  2. 若采用spring,则需要刷新数据源

阅读全文

与java修改properties相关的资料

热点内容
sql数据库查询表命令 浏览:551
简单音乐网站源码 浏览:644
运动健康app华为手表怎么连接 浏览:748
肌肉塑造全书pdf下载 浏览:796
安卓简约拼图用什么软件好 浏览:289
fx1n加密程序 浏览:844
淘客阿里云服务器 浏览:476
100压缩打造 浏览:422
安卓手机怎么和苹果平板传文件 浏览:973
开始选项卡中的页眉和页脚命令选项 浏览:424
pdf的字体怎么改 浏览:856
python读写视频 浏览:88
科鲁兹压缩机轴承 浏览:353
word文档转换成pdf文件找不到 浏览:27
组件注册命令 浏览:760
安卓大屏导航用的是什么运放 浏览:443
myandroidtools的备份 浏览:900
python爬虫天气预报 浏览:761
android70权限管理 浏览:749
魔兽辛迪加是什么服务器 浏览:472