Java 中将由应用程序用户更改的常量存储在哪里?
Where to store constants in Java that will be changed by users of the application?
所以我的 Java 应用程序中的常量将被用户更改,因为它们指定了本地数据库要求(用户名、密码、端口号等)。现在我应该将它们保留在我的主 class 中并向用户指定他们将必须更改此 class 中的以下变量。或者我应该在我的主要 class 将实现的接口中定义它们吗?或者有什么更好的建议?
编辑:糟糕,我意识到我使用了不正确的术语。我应该改用设置变量。
在程序执行期间保持不变但可以更改的值称为 settings 或 preferences。 Java 供应 preferences API,可用于此目的。
下面是一个使用 API:
检索用户首选项的示例
Preferences prefs = Preferences.userRoot().node(this.getClass().getName());
String userName = prefs.get("userName");
String encryptedPassword = prefs.get("encryptedPassword");
我想我明白你打算做什么了。许多人所做的是创建一个属性文件,该文件由您的 java 程序读取,该程序将这些变量视为不会更改的值。
这使用户能够在执行前更改配置文件,并允许您的程序将这些变量视为不变的。我不确定我会让它们保持不变,但可以将它们视为不变的值。
http://javarevisited.blogspot.com/2012/03/how-to-read-properties-file-in-java-xml.html
Android XML layout constants
我认为这些变量的位置取决于您选择如何实现您的程序设计。需要练习才能了解何时创建单独的 class 有意义,所以如果您一开始不理解,请不要感到沮丧。如果您的主要 class 变得冗长和复杂,这就是可能是时候将内容拆分成单独的 class 的一个例子。
您可能会发现这些链接有助于决定何时适合创建单独的 classes:
我们在当前项目中使用 excel sheet 映射 属性 及其值。用户可以修改excel sheet 为want 值发送给我们
我们从 excel 数据生成 XML。我们创建了一个 'configuration' 页面,我们在其中上传了 XML。我们编写了一个程序,每 30 分钟 运行 检查 XML 中的数据是否已更改。这不是最好的做事方式,但它对我们有用,因为我们的应用程序中有很多属性需要根据业务需求不断更改。
所以我的 Java 应用程序中的常量将被用户更改,因为它们指定了本地数据库要求(用户名、密码、端口号等)。现在我应该将它们保留在我的主 class 中并向用户指定他们将必须更改此 class 中的以下变量。或者我应该在我的主要 class 将实现的接口中定义它们吗?或者有什么更好的建议?
编辑:糟糕,我意识到我使用了不正确的术语。我应该改用设置变量。
在程序执行期间保持不变但可以更改的值称为 settings 或 preferences。 Java 供应 preferences API,可用于此目的。
下面是一个使用 API:
检索用户首选项的示例Preferences prefs = Preferences.userRoot().node(this.getClass().getName());
String userName = prefs.get("userName");
String encryptedPassword = prefs.get("encryptedPassword");
我想我明白你打算做什么了。许多人所做的是创建一个属性文件,该文件由您的 java 程序读取,该程序将这些变量视为不会更改的值。
这使用户能够在执行前更改配置文件,并允许您的程序将这些变量视为不变的。我不确定我会让它们保持不变,但可以将它们视为不变的值。
http://javarevisited.blogspot.com/2012/03/how-to-read-properties-file-in-java-xml.html
Android XML layout constants
我认为这些变量的位置取决于您选择如何实现您的程序设计。需要练习才能了解何时创建单独的 class 有意义,所以如果您一开始不理解,请不要感到沮丧。如果您的主要 class 变得冗长和复杂,这就是可能是时候将内容拆分成单独的 class 的一个例子。
您可能会发现这些链接有助于决定何时适合创建单独的 classes:
我们在当前项目中使用 excel sheet 映射 属性 及其值。用户可以修改excel sheet 为want 值发送给我们
我们从 excel 数据生成 XML。我们创建了一个 'configuration' 页面,我们在其中上传了 XML。我们编写了一个程序,每 30 分钟 运行 检查 XML 中的数据是否已更改。这不是最好的做事方式,但它对我们有用,因为我们的应用程序中有很多属性需要根据业务需求不断更改。