0
我有这个问题约2天,我找不到任何解决方案。事情是我使用MySQL-Connection-Java在Android上操作MySQL。在调试时,即使Eclipse Java中的代码运行正常,它也无法与此基础连接。我一直在关注互联网上的许多论坛讨论,但似乎没有有效的解决方案,或者我可能是盲目的。下面你可以看到我正在使用的课程代码。我不知道为什么在Eclipse中与基础连接,但在Android设备上它不想。在Eclipse中的代码工作,但在Android上不起作用
错误代码:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:无法创建与数据库服务器的连接。尝试重新连接3次。放弃。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
public class JDBC {
// init database constants
private static final String DATABASE_DRIVER = "com.mysql.jdbc.Driver";
private stat
ic final String DATABASE_URL = "jdbc:mysql://sql7.freemysqlhosting.net/sql7109625?autoReconnect=true";
private static final String USERNAME = "REMOVED";
private static final String PASSWORD = "REMOVED";
private static final String MAX_POOL = "250";
// init connection object
private Connection connection;
// init properties object
private Properties properties;
// create properties
private Properties getProperties() {
if (properties == null) {
properties = new Properties();
properties.setProperty("user", USERNAME);
properties.setProperty("password", PASSWORD);
properties.setProperty("MaxPooledStatements", MAX_POOL);
}
return properties;
}
// connect database
public Connection connect() {
if (connection == null) {
try {
Class.forName(DATABASE_DRIVER);
connection = DriverManager.getConnection(DATABASE_URL, getProperties());
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
return connection;
}
// disconnect database
public void disconnect() {
if (connection != null) {
try {
connection.close();
connection = null;
} catch (SQLException e) {
e.printStackTrace();
}
}
} }
如果我是你,我会改变我的MySQL密码真的快,你只是张贴公开在互联网上。 –
为什么您认为您可以使用代码连接到计算机上的常规MySQL数据库以连接到Android上的SQLite数据库,而无需更改任何内容? –
@Niels Masdorp 当我与常规MySql连接时,我拿这个代码的数据: [link](http://stackoverflow.com/questions/2839321/connect-java-to-a-mysql-database) ' String sql =“SELECT * FROM stackoverflow”; try {PreparedStatement statement = mysqlConnect.connect()。prepareStatement(sql); ...继续... ...继续... ...完成.... } catch(SQLException e){ e.printStackTrace(); } finally { mysqlConnect.disconnect(); }' –