我正在尝试将 .properties 文件加载到我的可分发jar文件中。这就是我到目前为止所做的:
在我的 config.properties 文件中,我定义了此属性
jdbc.driverClassName = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/testdb
jdbc.username = root
jdbc.password =
在我的班级 DBManager 上,我有这样的方法:
//Default Constructor
public DBManagerImpl(){
JDBC_DRIVER = getResource().getProperty("jdbc.driverClassName","com.mysql.jdbc.Driver");
try {
Class.forName(JDBC_DRIVER);
}...
}
//Getting properties file
private Properties getResource(){
Properties prop = new Properties();
InputStream input = null;
try {
input = getClass().getClassLoader().getResourceAsStream("config.properties");
prop.load(input);
} ...
return prop;
}
public Connection getConnection() {
Connection connection = null;
try {
DATABASE_URL = getResource().getProperty("jdbc.url", "jdbc:mysql://localhost:3306/defaultdb");
username = getResource().getProperty("jdbc.username", "root");
password = getResource().getProperty("jdbc.password", "");
connection = DriverManager.getConnection(DATABASE_URL, username, password);
} ...
return connection;
}
同样明智的,我还有另一个文件 book.csv ,其中包含要加载到我桌面上的书籍列表。
我现在的问题是,在生成jar文件时,如果我在 config.properties 上更改我的定义或修改我的 book.csv 并运行我的可分发文件没有渲染变化。
希望有人能指出解决方案。
非常感谢任何帮助