您好,我正在创建一个 Android 应用程序,需要连接到 phpmyadmin,我在 Logcat 中收到以下错误 ..... com.mysql.jdbc.exceptions.jdbc4.MysqlNonTransientConnectionException:无法创建与数据库服务器的连接
我的 MainActivity.java 类
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
public class MainActivity extends Activity {
public final static String EXTRA_MESSAGE = "com.example.KwikFit2.MESSAGE";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void sendMessage(View view) {
DatabaseConnection dbcon = new DatabaseConnection();
dbcon.connectionCreate("jdbc:mysql://localhost:3306/diss", "root", "");
System.out.println("got here");
Intent intent = new Intent(this, DisplayWelcomeActivity.class);
startActivity(intent);
}
}
我的DatabaseConnection.java
package com.example.kwikfit2;
import java.sql.*;
public class DatabaseConnection {
public Connection connectionCreate(String url, String user, String password){
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(url,user,password);
System.out.println("Connection Established");
return con;
}catch(Exception e){
System.out.println(e);
}return null;
}
}
任何帮助将不胜感激,
谢谢
最佳答案
正如 Shihan 指出的,您没有连接到 phpmyadmin。它只是一个基于 Web 的工具,用于管理 Mysql 数据库。
你的代码假设你正在本地主机上运行 MySQL,这将是你的 Android 设备,我严重怀疑这一点。快速谷歌搜索没有找到任何有关 Android 版本的 MySQL 服务器的信息。您应该连接到真正运行 MySQL 数据库的实际服务器。另请注意,通常 MySQL 默认配置为仅允许来自 localhost 的连接。
在 Android 上,您根本不真正使用 jdbc。最好在服务器上有一个 RESTful 服务,Android 将通过 HTTP 使用该接口(interface)与服务器进行通信。
您应该查看有关 SQLite 的教程,看看它是否能解决您的问题。它是一个嵌入式数据库,在许多 Android 应用程序中使用。
关于java - 将 Android 应用程序连接到 phpmyadmin - 无法连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22302568/