Java - MySQL - 创建连接错误

时间:2014-07-23 14:33:48

标签: java mysql

我不知道为什么但是这行给了我一个错误。我首先制作一些私有字符串,主机,端口,数据库,用户和密码。然后我在构造函数中设置这些字符串。

Connection conn = DriverManager.getConnection("jdbc:mysql://" + host + ":" + port + "/" + database + "?user=" + user + "&password=" + password);

这是我收到的错误消息:

  

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:   由于基础异常,无法加载连接类:   'java.lang.Number FormatException:对于输入字符串:“null”'。

我在这里做错了什么?

3 个答案:

答案 0 :(得分:3)

最可能的原因是您的一个参数为null。可能port,因为尝试将其转换为数字。

除非您使用非默认端口(默认为3306),否则您可以省略端口:

Connection conn = DriverManager.getConnection("jdbc:mysql://" + host + "/" + database + "?user=" + user + "&password=" + password);

答案 1 :(得分:1)

我的猜测是,port只有null

当您将字符串传递给getConnection()方法时,它会尝试将端口解析为数字。当您将空值连接到String时,它会附加' null'。现在你的字符串看起来像jdbc:mysql://examplehost:null。因此java.lang.Number FormatException: For input string: "null"

答案 2 :(得分:0)

从例外情况来看,这一点非常清楚。这是因为你的port为null并且在尝试解析为Number时抛出异常。