Java:在没有硬编码登录凭据的情况下将分数插入远程MySQL数据库

时间:2014-01-28 19:23:34

标签: java mysql jdbc

我正在用Java编写一个小游戏,我想将用户分数保存到远程MySQL数据库中。我现在正在使用JDBC,并且我已经建立了连接。我可以根据需要插入和阅读。登录凭据现在是硬编码的:

public class DatabaseHandler {
    private final String URL = "jdbc:mysql://_ip_goes_here_:3306/";
    private final String DB_NAME = "db_name";
    private final String USERNAME = "username";
    private final String PASSWORD = "password";

    //Rest of class
}

我可以想象,人们可以轻松地反编译该类文件并提取此信息,从而获得在他们认为合适时写入数据库的能力。

存档连接有更好的选择,还是在.jar和数据库之间使用某种中间人?怎么会意识到这一点?

2 个答案:

答案 0 :(得分:2)

这种东西是属性文件派上用场的地方。这个页面有关于读取和写入这些内容的示例,顺便提一下您正在处理的参数类型:

http://www.mkyong.com/java/java-properties-file-examples/

希望分离量足以满足您的需求。

答案 1 :(得分:0)

Totaly同意Brian - 属性未编译到.jar / .war / .ear中 - 您可以根据需要随时更改它们,这是使用它们的最大优势