Android 中使用JDBC链接MySQL

半腔热情 提交于 2020-03-19 03:36:27

最近帮朋友做个APP,朋友要求不高,自己也没多少时间,所以直接考虑APP中直接链接数据库就好了,不单独做Web REST API了。因为以前没有试过在 Android中直接使用JDBC链接数据库,所以遇到了点小问题,这里记录下共自己和他人参考。

先来复习下使用JDBC:

1、复制 mysql-connector-java-3.1.14-bin.jar 包到 libs 里;

2、加载JDBC驱动程序到JVM;

3、使用 DriverManager 创建数据库连接 Connection;

4、创建 Statement ;

5、用 Statement  来操作数据库。

Class.forName("com.mysql.jdbc.Driver"); // 注意要 import com.mysql.jdbc.Driver;

String url = "jdbc:mysql://localhost:3306/testdb";
String user = "root";
String password = "123456"; 

Connection conn = DriverManager.getConnection(url, user, password);
Statement statement = conn.createStatement();ResultSet res = statement.executeQuery("SELECT * FROM t_user");

 

在 Android 中使用JDBC,需要注意几个问题:

1、确认AndroidManifest.xml 中添加了 <uses-permission android:name="android.permission.INTERNET" />  网络权限;

2、确保链接 MySQL 的 user 拥有远程访问;

3、确保你的数据库操作代码(网络连接操作代码)放在一个新线程中执行,并结合 Handle 异步完成你想做的业务逻辑;android 4 以后不允许在主线程进行网络连接操作,否则会出现 android.os.NetworkOnMainThreadException 错误;

4、statement 生成的 ResultSet 对象,会随着 statement 对象的改变(关闭或重新执行或从多个结果的序列检索下一个结果)而自动关闭。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!