我正在为数据库连接创建属性文件。我已经给出了文件的路径,并且我使用该函数存储属性:
public void setProperty(String key, String value) {
properties.setProperty(key, value);
}
我设置了以下属性:
"url","jdbc:mysql://localhost:3306/";"dbname","example";"user", "postgres";"Pass","123";
我的问题是,当我在另一个系统中使用我的应用程序时,这个属性文件是如何有用的(实际上我已经浏览了“java中的属性文件”教程,但我无法理解它们是如何被使用的)。
在新系统中,用户名和密码会有所不同,那么这个文件怎么会有用呢?
答案 0 :(得分:4)
在新系统中,用户名和密码会有所不同,那么这个文件怎么会有用呢?
这很有用正是因为文件 在不同的系统上可能不同。通过将特定于系统的详细信息放入可在不同系统上更改的文件中,您可以避免为每个不同的系统编写不同的Java代码。
但我怎么知道其他用户的用户名和密码
在您不知道的情况下,您有许多替代方案,例如:
顺便说一下,您似乎发明了自定义属性文件格式。你不需要这样做。 java.util.Properties
类提供了两种用于读取和写入的标准格式和方法。
答案 1 :(得分:0)
至少据我了解,属性文件的想法是在jar文件的外部。我将描述我要走的路 - 基本思路是在打包应用程序时使用相对路径并始终使用相同的结构:
这样您就可以发送一个zip文件,其内部结构如下:
/
/config
/bin
/lib
<main jar file with manifest - the manifest contains all the classpath info - this info is automatically generated by the maven plugins>
当凭据更改时,您所要做的就是编辑属性文件。另一个问题是,如果这是安全的。