[英]Exception in Login:: Could not create connection to database server
我正在使用连接到AWS上的数据库的android应用程序(API级别19),并且不断收到以下错误:
04-29 09:24:12.095: I/System.out(1711): Exception in Login::Could not create connection to database server.
04-29 09:24:12.095: W/System.err(1711): com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
我有一个名为DataBaseConnection的类来处理连接:
public class DataBaseConnection {
Connection connect = null;
public Connection getDataBaseConnection(){
if(connect == null){
try {
Class.forName("com.mysql.jdbc.Driver");// loading MySQL driver
connect = DriverManager.getConnection("jdbc:mysql://cmpe277.c38qsf0avgvg.us-west-1.rds.amazonaws.com:3306/CMPE277?user=root&password=password");
//Set up connection with DB, username, password
} catch (Exception e) {
System.out.println("Exception in Login::"+e.getMessage());
e.printStackTrace();
}
}
return connect;
}
}
连接数据库并插入值的onClick方法如下所示:
//onClick Method for Sign Up
public void signUp(View view){
DataBaseConnection dbConn = new DataBaseConnection();
Connection conn = dbConn.getDataBaseConnection();
EditText usernameEntry = (EditText) findViewById(R.id.username);
username = usernameEntry.getText().toString();
EditText password1Entry = (EditText) findViewById(R.id.password1);
password1 = password1Entry.getText().toString();
EditText password2Entry = (EditText) findViewById(R.id.password2);
password2 = password2Entry.getText().toString();
//Check That the two Typed Passwords Match
if(password1.equals(password2)){
query = "INSERT INTO USER VALUES (username,password1)";
try {
if(conn != null){
stmt = conn.createStatement();
stmt.executeQuery(query);
}
}
catch (Exception e) {
System.out.println("Error in execute query::"+e.getMessage());
e.printStackTrace();
}
}
}
我已经在Java应用程序中使用了此类(DataBaseConnection),没有问题,但是当我尝试在android应用程序中实现该类时,我遇到了错误。
找到了解决方案。 只需使用AsyncTask在单独的线程中运行与数据库的连接
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.