我试图设置我的数据库属性,因此将来如果用户想要更改数据库的路由,可以更改它。问题是当我尝试设置全宽冒号时,它总是添加一个反斜杠转义字符。
我尝试过正常和双重逃避,但它无法正常工作。
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Properties;
public class SetProps {
public static void SetDefaultProps(){
Properties prop = new Properties();
OutputStream output = null;
try {
output = new FileOutputStream("./build/classes/configuracion.properties");
// Set the database property
prop.setProperty("url", "jdbc:mysql://192.168.1.192:3306/ordenestaller");
// Save Properties
prop.store(output, null);
} catch (IOException io) {
io.printStackTrace();
} finally {
if (output != null) {
try {
output.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
SetDefaultProps();
}
}
答案 0 :(得分:0)
在java代码中对db url进行硬编码不是一个好的编码实践。 我建议你把这些网址放在属性文件中,并在需要时使用ResouceBundle读取它们。
你可以拥有" information.properties"在类路径中的某个位置,该文件的内容可以是
dbURL:jdbc:mysql://192.168.1.192:3306/ordenestaller
现在在您的代码中,您可以使用ResourceBundle
来获取此代码ResourceBundle bundle = ResourceBundle.getBundle("information");
String dbURL= bundle.getString("dbURL");
这将有一个额外的好处,即如果更改了DB URl,则无需再次重新编译java类。
希望有所帮助