Я столкнулся с действительно странной проблемой, я не знаю, как обращаться.Cant Conect to MySql в java с файлом свойств
Мое приложение подключается к базе данных MySQL, чтобы получать данные, до вчерашнего дня у меня были детали подключения, жестко закодированные в коде, и все работало нормально.
IE:
connect = DriverManager.getConnection("jdbc:mysql://10.0.0.188:3306", "dudug", "qazqaz");
Я решил сделать мое приложение более модульным и иметь возможность изменить/установить сведения о подключении, и сохраните его в файле свойств.
Теперь, когда я использую следующий код:
Class.forName("com.mysql.jdbc.Driver");
// setup the connection with the DB.
String user = props.getProperty("SqlUserName");
String pass = props.getProperty("SqlPassword");
String port = String.valueOf(props.getProperty("SqlPort"));
String addr = props.getProperty("SqlAddress");
connect = DriverManager.getConnection("\"jdbc:mysql://" + addr + ":" + port + "\",\"" + user + "\",\"" + pass + "\"");
, я получаю сообщение об ошибке, как это:
java.sql.SQLException: No suitable driver found for "jdbc:mysql://10.0.0.188:3306?user=dudug&password=qazqaz"
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
при отладке, обе строки выходного соединения являются то же:
«jdbc: mysql: //10.0.0.188: 3306», «dudug», «qazqaz»
Только когда я использую модульную строку, у меня возникает проблема.
У кого-нибудь есть идеи?
Thnaks,
Дэйв.
UPDATE:
когда это использовать это:
DriverManager.getConnection("jdbc:mysql://" + props.getProperty("SqlAddress") + ":" + String.valueOf(props.getProperty("SqlPort"))
+ "," + props.getProperty("SqlUserName") + "," + props.getProperty("SqlPassword"));
или это:
String user = props.getProperty("SqlUserName");
String pass = props.getProperty("SqlPassword");
String port = String.valueOf(props.getProperty("SqlPort"));
String addr = props.getProperty("SqlAddress");
connect = DriverManager.getConnection("jdbc:mysql://" + addr + ":" + port + "," + user + "," + pass);
его просто застревает, не предоставлявшие никакого сообщения об ошибке.
Вы должны иметь разъем MySQL в вашем пути к классам. Загрузите его с http://dev.mysql.com/downloads/connector/j/5.1.html –
Что это значит? –
Вы добавили библиотеку соединителей mysql в файлы вашей библиотеки? – CodeMonkey