Java 更新web应用程序中的属性文件

Java 更新web应用程序中的属性文件,java,tomcat,web-applications,properties-file,Java,Tomcat,Web Applications,Properties File,我有一个属性文件(在rsources文件夹下),其中存储了一个变量(key=value) 当用户插入新值或更新旧值时,我需要更新它,所以我可以这样做吗? 我对此表示怀疑,因为它是一个web应用程序,所以它只是部署在服务器上的一场战争。那么,如何访问.properties文件并直接从代码中更改它呢 如果不可能,还有其他解决方案吗?也许用户可以在文件系统中提供一个覆盖属性文件,其值将覆盖打包的默认属性文件 看看,这是什么 通常,您希望提供一组基本的配置值,但是 允许用户根据其特定环境轻松覆盖它们。

我有一个属性文件(在rsources文件夹下),其中存储了一个变量(key=value)

当用户插入新值或更新旧值时,我需要更新它,所以我可以这样做吗? 我对此表示怀疑,因为它是一个web应用程序,所以它只是部署在服务器上的一场战争。那么,如何访问.properties文件并直接从代码中更改它呢


如果不可能,还有其他解决方案吗?

也许用户可以在文件系统中提供一个覆盖属性文件,其值将覆盖打包的默认属性文件

看看,这是什么

通常,您希望提供一组基本的配置值,但是 允许用户根据其特定环境轻松覆盖它们。 一种方法是将默认值硬编码到代码中 然后提供一个属性文件来覆盖该属性。但是, 这是一种非常严格的做事方式。相反,与 CompositeConfiguration您可以提供多种不同的设置方式 启动一个配置


也许用户可以在文件系统中提供一个覆盖属性文件,其值将覆盖打包的默认属性文件

看看,这是什么

通常,您希望提供一组基本的配置值,但是 允许用户根据其特定环境轻松覆盖它们。 一种方法是将默认值硬编码到代码中 然后提供一个属性文件来覆盖该属性。但是, 这是一种非常严格的做事方式。相反,与 CompositeConfiguration您可以提供多种不同的设置方式 启动一个配置


您可以在数据库中创建一个新表(例如T_属性)并在表中添加/修改行,而不是修改属性文件。
使用2列、键和值定义表,并相应地更改记录。

您可以在数据库中创建新表(例如T_属性)并在表中添加/修改行,而不是修改属性文件。
使用2列、键和值定义表,并相应地更改记录。

您可以让用户写入属性文件,但我认为这样做不太干净。 java.util包中有一个名为“Properties”的类,您可以使用该类从Web应用程序加载物理属性文件的表示形式

例如,要加载属性文件,可以使用以下代码:

 public void loadProps(File pfile) throws IOException {
    Properties props = new Properties();
    FileInputStream fis = new FileInputStream(propsFile);
    props.load(fis);    
    fis.close();
}
现在,您可以使用内置命令来操作文件: -setProperty(字符串键、字符串值); -获取(对象键)

完成后,只需调用properties对象上的save方法。
你需要一个OutputStream。你可以让用户写入属性文件,但我认为这样做不太干净。 java.util包中有一个名为“Properties”的类,您可以使用该类从Web应用程序加载物理属性文件的表示形式

例如,要加载属性文件,可以使用以下代码:

 public void loadProps(File pfile) throws IOException {
    Properties props = new Properties();
    FileInputStream fis = new FileInputStream(propsFile);
    props.load(fis);    
    fis.close();
}
现在,您可以使用内置命令来操作文件: -setProperty(字符串键、字符串值); -获取(对象键)

完成后,只需调用properties对象上的save方法。
为此,您需要一个输出流。

但无法在客户端计算机中在何处写入?在临时目录中?注册表中的临时值?部署到何处的临时文件?但无法在客户端计算机中写入在何处?在临时目录中?注册表中的临时值?部署到何处的临时文件?