java - Android应用程序和MySQL连接错误

标签 java android mysql database-connection

您好,我是一名 Android 开发新手。 我尝试将我的 Android 应用程序连接到我的电脑中的 MySQL Workbench 服务器。 但我无法连接,我不知道为什么 我的代码是:

String url="jdbc:mysql://Vasilis-PC:3306/coffees";
String driver="com.mysql.jdbc.Driver";
String username="root";
String password= "root";
Class.forName(driver).newInstance();
Connection conn = DriverManager.getConnection(url, username, password);

我收到这些错误:

10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Constructor.constructNative(Native Method)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.Util.handleNewInstance(Util.java:400)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.Util.getInstance(Util.java:383)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:958)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:937)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:872)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2326)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2079)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Constructor.constructNative(Native Method)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.Util.handleNewInstance(Util.java:400)
10-06 14:57:30.073  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:399)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.sql.DriverManager.getConnection(DriverManager.java:179)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.sql.DriverManager.getConnection(DriverManager.java:213)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.example.kostasvasilis.barpda.MainActivity.logInAction(MainActivity.java:48)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Method.invokeNative(Native Method)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:515)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.view.View$1.onClick(View.java:3821)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.view.View.performClick(View.java:4441)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.view.View$PerformClick.run(View.java:18442)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.os.Handler.handleCallback(Handler.java:733)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:95)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.os.Looper.loop(Looper.java:136)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5102)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Method.invokeNative(Native Method)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:515)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at dalvik.system.NativeStart.main(Native Method)
10-06 14:57:30.083  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ Caused by: android.os.NetworkOnMainThreadException
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1145)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at java.net.InetAddress.getAllByName(InetAddress.java:214)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:191)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:298)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2247)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2280)
10-06 14:57:30.093  31737-31737/com.example.kostasvasilis.barpda W/System.err﹕ ... 25 more

谁来帮帮我吧!!! 我做错了什么? 谢谢!

最佳答案

Caused by: android.os.NetworkOnMainThreadException

在应用程序中使用异步任务进行网络调用,或者您可以设置策略以允许这样做,但这是不好的编码实践,因为它会阻塞您的 UI 线程。

StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);

关于java - Android应用程序和MySQL连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32969675/

相关文章:

php - 如何让用户将数据输入到不同的数据库中?

mysql 8 MyISAM "SHOW TABLE STATUS"行计数

java - 我可以从 Groovy 调用 Scala 动态函数吗?

Java .equals() instanceof 子类?为什么不调用父类(super class) equals 而不是将其设为最终类?

java - 如何模拟 super 引用(在 super 类上)?

android - 如何让 ProgressBar 停止旋转?

java - HeliconTech 在 IIS 上部署 .war 文件

Java Android - onActivityResult 在另一个 Activity 中

java - 防止后台Activity被杀死?

php - 从 XML 节点中提取多个值并将其映射到数据库