Android Studio通过jdbc访问云端MySQL数据库,我这里以腾讯云数据库为例子
1.云数据库设置
首先需要购买一个云mysql数据库,我这里使用的是腾讯云服务器,进行相应设置
首先点击管理
之后打开外网地址,则会显示外网地址和外网端口
记住外网地址和外网端口,下面会用到
之后登录数据库,新建相应的数据库和表
记住你的数据库的登录账号和密码,记住你数据库和表的名字
2.在androidstudio下导入 mysql-connector-java-5.1.X-bin.jar 的jar包
我这里下载的是mysql-connector-java-5.1.46-bin.jar
下载解压,将下列mysql-connector-java-5.1.46-bin.jar复制到app->libs下面
之后右键该jar ->add as jar
3.编写MainActiviry.java
package com.example.yundate;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);new Thread(new Runnable() {@Overridepublic void run() {DBConnection.link();}}).start();}}
4.创建DBConnection.java
package com.example.yundate;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;public class DBConnection {public static void link (){//要连接的数据库url,注意:此处连接的应该是服务器上的MySQl的地址String url = \"jdbc:mysql://外网地址:端口/数据库名称\";//连接数据库使用的用户名String userName = \"登录账号\";//连接的数据库时使用的密码String password = \"密码\";Connection connection=null;try {//1、加载驱动Class.forName(\"com.mysql.jdbc.Driver\").newInstance();System.out.println(\"驱动加载成功!!!\");}catch (Exception e){e.printStackTrace();}try {//2、获取与数据库的连接connection = DriverManager.getConnection(url, userName, password);System.out.println(\"连接数据库成功!!!\");//3.sql语句String sql = \"INSERT INTO driver (id, name) VALUES ( \'24100413\', \'ljy\')\";//4.获取用于向数据库发送sql语句的psPreparedStatement ps=connection.prepareStatement(sql);ps.execute(sql);}catch (Exception e) {e.printStackTrace();}finally {if(connection!=null){try {connection.close();}catch (Exception e){e.printStackTrace();}}}}}
5.在AndroidManifest.xml中添加联网权限
<uses-permission android:name=\"android.permission.INTERNET\"/>
6.程序运行
原本:
运行后即插入了一条数据: