android studio使用JDBC访问mysql数据库(Kotlin方法)
工具:mysql-connector-java-5.1.48.jar,mysql version 5.6.19,android studio内置模拟器
1.connection
import java.sql.DriverManager
interface Connection {
fun init(){
var driver="com.mysql.jdbc.Driver"
var url="jdbc:mysql://10.0.2.2:3306/test"
var user="root"
var psd="rs123456"
try {
Class.forName(driver).newInstance()
println("连接成功1")
}catch (e:Exception){
e.printStackTrace()
println("连接失败")
}
try{
Thread({
DriverManager.getConnection(url,user,psd)
println("连接成功2")
}).start()
}catch (e:Exception) {
e.printStackTrace()
println("连接失败2")
}
}
}
注意事项:android studio内置模拟器ip地址一定要设置为10.0.2.2
连接问题参考https://blog.csdn.net/qq_37141773/article/details/84326163
2.PreparedStatement
【准备工作】
在数据test中建立table
use test;
create table stuinfo(id int,name varchar(20));

<1>
import java.lang.Exception
import java.sql.Driver
import java.sql.DriverManager
import java.sql.PreparedStatement interface Connection {
fun init(){
var driver="com.mysql.jdbc.Driver"
var url="jdbc:mysql://10.0.2.2:3306/test"
var user="root"
var psd="rs123456"
try {
Class.forName(driver).newInstance()
println("连接成功1")
}catch (e:Exception){
e.printStackTrace()
println("连接失败")
} try{
Thread({
val conn=DriverManager.getConnection(url,user,psd) var sql:String="insert into stuinfo(id,name)values(?,?)"
val ps:PreparedStatement=conn.prepareStatement(sql)
ps.setString(1,"3")
ps.setString(2,"vocus")
ps.execute()
}).start() }catch (e:Exception) {
e.printStackTrace()
println("连接失败2")
} }
}

<2>Util类
class DbUtil {
fun updateDatabase(sql:String,vararg args:Any) {
var driver = "com.mysql.jdbc.Driver"
var url = "jdbc:mysql://10.0.2.2:3306/test"
var user = "root"
var psd = "rs123456"
//var sql = "insert into stuinfo(id,name) values(?,?)"
try {
Class.forName(driver).newInstance()
println("数据库连接成功...")
} catch (e: Exception) {
e.printStackTrace()
}
try {
Thread({
var conn = DriverManager.getConnection(url, user, psd)
var ps = conn!!.prepareStatement(sql)
for(i in 0 until args.size){
ps.setObject(i+1,args[i])
}
ps.execute()
println("操作数据成功...")
}).start()
} catch (e: Exception) {
e.printStackTrace()
}
}
}
增加查询
var conn:java.sql.Connection?=null
var driver = "com.mysql.jdbc.Driver"
var url = "jdbc:mysql://10.0.2.2:3306/test"
var user = "root"
var psd = "rs123456" fun connection():java.sql.Connection?{ //var sql = "insert into stuinfo(id,name) values(?,?)"
try {
Class.forName(driver).newInstance()
println("数据库连接成功...")
} catch (e: Exception) {
e.printStackTrace()
}
try {
conn = DriverManager.getConnection(url, user, psd)
}catch (e:Exception){
e.printStackTrace()
}
return conn
} fun updateDatabase(sql:String,vararg args:Any) {
try {
Thread({
var conn = connection()
var ps = conn!!.prepareStatement(sql)
for(i in 0 until args.size){
ps.setObject(i+1,args[i])
}
ps.execute()
println("操作数据成功...")
}).start() } catch (e: Exception) {
e.printStackTrace()
}
} fun queryDatabase(sql:String,vararg args:Any){
try{
Thread({
var conn=connection()
var ps=conn!!.prepareStatement(sql)
for(i in 0 until args.size){
ps.setObject(i+1,args[i])
}
var resultSet=ps.executeQuery()
var rsmd=resultSet.getMetaData()
var columns=rsmd.columnCount
println("执行查询成功...以下为返回结果...")
if(resultSet.next()) {
for (i in 0 until columns) {
var value=resultSet.getObject(i+1)
var columnName=rsmd.getColumnName(i+1)
println("${columnName},${value}")
}
} }).start()
}catch (e:Exception){
e.printStackTrace()
} }
}
android studio使用JDBC访问mysql数据库(Kotlin方法)的更多相关文章
- 在Eclipse中使用JDBC访问MySQL数据库的配置方法
在Eclipse中使用JDBC访问MySQL数据库的配置方法 分类: DATABASE 数据结构与算法2009-10-10 16:37 5313人阅读 评论(10) 收藏 举报 jdbcmysql数据 ...
- C#访问MySQL数据库的方法
C#访问MySQL数据库的方法 (1)首先需要下载C#访问MySQL数据库的ADO.NET驱动程序 下载地址为: http://dev.mysql.com/downloads/connector/ne ...
- 使用JDBC对数据库进行查询的前期准备工作,以及简单的JDBC访问MySQL数据库(Mac)
首先JDBC的前期数据库数据准备: 1,打开链接好MySQL的Workbench软件,新建一个数据库: 2.然后打开数据库对应的代码编辑窗口,建立表和插入数据记录: 3.然后是打开关于javaWeb编 ...
- 【转】Java 通过JDBC连接Mysql数据库的方法和实例【图文说明】
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...
- Java 通过JDBC连接Mysql数据库的方法和实例
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...
- Java 通过JDBC连接Mysql数据库的方法和实例【图文说明】
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...
- Spring Boot入门(五):使用JDBC访问MySql数据库
本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 在程序开发的过程中,操作数据库是必不可少的部分,前面几篇博客中,也一直未涉及到数据库的操作,本篇博客 就 ...
- 浅谈JDBC访问MySQL数据库
经过我自己的总结后,其实很简单,只需要记住四个步骤,JDBC这部分的学习就可以掌握差不多了,请多多指教. 加载注册JDBC驱动: 打开数据库: 创建向数据库发送sql语句的statement: Res ...
- 【Java/MySql】使用JDBC访问MySql数据库的Maven工程
下载链接:https://files.cnblogs.com/files/xiandedanteng/FindNotnullColumns20191102-1.rar pom.xml里写: <p ...
随机推荐
- JAVA面试题0 JAVA语言的基本知识
JAVA语言的特点是什么? >面向对象:两个基本概念:类和对象:三大基本特性:封装.继承.多态: >健壮性:java吸收了C/C++的优点,但是去掉了它们影响健壮性的部分,例如指针和内存申 ...
- Rabbitmq之高级特性——实现消费端限流&NACK重回队列
如果是高并发下,rabbitmq服务器上收到成千上万条消息,那么当打开消费端时,这些消息必定喷涌而来,导致消费端消费不过来甚至挂掉都有可能. 在非自动确认的模式下,可以采用限流模式,rabbitmq ...
- CSS - 设置placeholder样式
input::placeholder { font-size: 12px; font-family: Arial; letter-spacing: 5p ...
- 【转载】redis.windows.conf 参数说明
1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no 2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/ru ...
- int, float, double 等转化为 string
一般有以下两种方法: QVecotr<int> vec; QString(QByteArray().setNum(vec.at(3))) float f; QString("%1 ...
- [题解] LuoguP3321 [SDOI2015]序列统计
感觉这个题挺妙的...... 考虑最暴力的\(dp\),令\(f[i][j]\)表示生成大小为\(i\)的序列,积为\(j\)的方案数,这样做是\(O(nm)\)的. 转移就是 \[ f[i+1][j ...
- 逆向-PE导入表
导入表 动态链接库需要导入表 结构 typedef struct _IMAGE_IMPORT_DESCRIPTOR { union { DWORD Characteristics; // 0 for ...
- Elasticsearch 使用集群 - 列出索引
章节 Elasticsearch 基本概念 Elasticsearch 安装 Elasticsearch 使用集群 Elasticsearch 健康检查 Elasticsearch 列出索引 Elas ...
- 2016蓝桥杯决赛C/C++A组第四题 路径之谜
题意: 小明冒充X星球的骑士,进入了一个奇怪的城堡.城堡里边什么都没有,只有方形石头铺成的地面. 假设城堡地面是 n x n 个方格.[如图1.png]所示. 按习俗,骑士要从西北角走到东南角.可以横 ...
- arm安装cuda9.0,tensorflow-gpu, jetson tx2安装Jetpack踩坑合集
因为要在arm(aarch64)架构的linux环境中安装tensorflow-gpu,但是官方tf网上没有对应的版本,所以我们找了好久,找到一个其他人编译好的tensorflow on arm的gi ...