android直连mysql数据库

最近做了个项目,app直接操作mysql数据库,特此记录一下
想必学过java的都知道,连接数据库都要用JDBC这个桥接。
环境介绍:楼主这里 自己使用Tomact 搭建个本地服务器,并安装好了mysql数据库。
本篇文章不解释前面的搭建服务器和安装mysql,大家自行查资料,不然太过臃肿。

一 下载需要的jar包

https://dev.mysql.com/downloads/connector/j/

JDBC桥接包下载

依赖

配置网络权限

后面就是加载驱动连接了。看Activity吧

package com.example.nick.connectionmysql

import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import kotlinx.android.synthetic.main.activity_main.*
import java.sql.Connection
import java.sql.DriverManager
import java.sql.SQLException

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        tv_hello.setOnClickListener {
            Thread(Runnable {
                val sql = "SELECT * FROM pos_shop "
                mysqlConnection(sql)
            }).start()
        }

    }
    /**
     * 连接数据库
     */
    fun mysqlConnection(sql:String) {
        var cn: Connection
        try {
            //加载驱动
            Class.forName("com.mysql.jdbc.Driver")
            //建立连接
            cn = DriverManager.getConnection("jdbc:mysql://192.168.8.254:3306/ggboy_2",
                    "ggboy", "123456")
            val ps = cn.createStatement()
            val resultSet = ps!!.executeQuery(sql)
            while (resultSet.next()) {
                Log.d("mysqlConnection: " , resultSet.getString("sh_co_barcode"))
            }

            if (ps != null) {
                ps!!.close()
            }
            if (cn != null) {
                cn.close()
            }
        } catch (e: ClassNotFoundException) {
            e.printStackTrace()
        } catch (e: SQLException) {
            e.printStackTrace()
        }

    }
}

执行日志

image.png

源码https://gitee.com/nick_li/ConnectionMysql

你可能感兴趣的:(android直连mysql数据库)