Android使用JDBC连接数据库
连接数据库是安卓开发中几乎不可避免的一项工作,稍有规模的应用通常都需要使用数据库来存储用户数据。对于本地数据库当然可以使用sqlite,而对于多用户线上应用,则一般需要配备云端数据库。其中比较常用且开源的就是Mysql,Mysql总的来说既小巧又方便。那么在这篇文章当中我们就介绍一下,如何在安卓开发中,连接到Mysql数据库。
本文中假设Mysql环境已经配置好,首先需要下载connector/J的Jar包。可至Maven仓库下载,下载地址为https://mvnrepository.com/artifact/mysql/mysql-connector-java;或直接在gradle中加入相应包
compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.16'
下面我们来创建数据连接类DbUtil.java
。
public class DbUtil {
public static String IP = "192.168.2.157"; //数据库IP
@SuppressLint("NewApi")
public static Connection createConnection() {
String DB_NAME = "**"; //数据库名
String DB_USERNAME = "**"; // 用户名
String DB_PASSWORD = "**"; //密码
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver");
String connURL = "jdbc:mysql://" + IP + ":3306/" + DB_NAME + "?useUnicode=true&characterEncoding=utf8";
conn = DriverManager.getConnection(connURL, DB_USERNAME, DB_PASSWORD);
} catch (SQLException se) {
Log.e("ERRO", se.getMessage());
} catch (ClassNotFoundException e) {
Log.e("ERRO", e.getMessage());
} catch (Exception e) {
Log.e("ERRO", e.getMessage());
}
return conn;
}
}
总的来说,与Java应用连接数据库类似,在需要连接数据库的地方,直接通过DbUtil.createConnection()
即可创建连接,当然不要忘记使用try...catch
捕获异常。
Listen to your heart.