我正在尝试解决使用JDBC连接到MySQL数据库的Java应用程序的问题.表面问题是,当连接到有效的数据库时,DriverManager.getConnection有时会返回NULL,而几分钟后它将返回到完全相同的数据库的有效连接.
我正在尝试解决这个问题,但我对Java,JDBC和MySQL相遇的理解相当有限.我一直在做很多关于这方面的研究,但已经撞墙了,不知道从哪里开始.
这是我到目前为止所做的:
任何关于我可以从这里离开的方向都将非常感激.
谢谢!
编辑 - 2月15日,美国中部时间上午10点35分 我为不具体而道歉.此应用程序是一个通常工作正常的生产应用程序.它成功处理了成千上万的连接,没有任何问题,只是这个问题会在白天随机出现,并且会在30秒到5分钟之间持续发生.
这是我一直追溯到DriverManager.getConnection的代码:
var dbConn = DatabaseConnectionFactory.createDatabaseConnection('com.mysql.jdbc.Driver','jdbc:mysql://'+ serverName +':' + port + '/' + database, userName, password);
public static DatabaseConnection createDatabaseConnection(String driver, String address, String username, String password) throws SQLException {
try {
Class.forName(driver);
} catch (Exception e) {
e.printStackTrace();
}
Properties info = new Properties();
info.setProperty("user", username);
info.setProperty("password", password);
// this property should only be set if it's for embedded database
info.setProperty("shutdown", "true"); …Run Code Online (Sandbox Code Playgroud)