我有这个问题大约2天,我找不到任何解决方案。我正在使用MySQL-Connection-Java在Android上运行MySQL。虽然Eclipse Java中的代码工作正常,但调试它无法与此基础连接。我在互联网上的许多论坛讨论中都在寻找,但似乎没有有效的解决方案,或者我可能是盲目的。您可以在下面看到我正在使用的课程代码。我不知道为什么在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();
}
}
} }
答案 0 :(得分:0)
我发现了我的问题。我用
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
和我的申请工作:)