main
package main
object JDBCDemo {
@JvmStatic
fun main(args: Array<String>) {
// val executeUpdate = DBUtils.executeUpdate("INSERT INTO stu VALUES(?, ?, ?, ?);", "S_1666", "aoli", 20, "male")
// println("$executeUpdate")
DBUtils.executeQuery("SELECT* FROM student;")
}
}
DBUtils
package main
import java.sql.*
object DBUtils {
//驱动名称
var driver = "com.mysql.cj.jdbc.Driver"
//url连接字符串
var url = "jdbc:mysql://localhost:3306/mydb2"
//用户名
var user = "root"
//密码
var password = "********"
var conn: Connection? = DriverManager.getConnection(url, user, password)
var pstat: PreparedStatement? = null
var rs: ResultSet? = null
init {
try {
Class.forName(driver)
} catch (e: ClassNotFoundException) {
println("注册驱动异常")
}
}
//释放资源
private fun closeAll(rs: ResultSet?, stat: Statement?, conn: Connection?) {
rs?.close()
stat?.close()
conn?.close()
}
//执行命令(增删改)
fun executeUpdate(sql: String?, vararg params: Any?): Int? {
pstat = conn?.prepareStatement(sql)
for (i in params.indices) {
pstat?.setObject(i + 1, params[i])
}
val count = pstat?.executeUpdate()
closeAll(null, pstat, conn)
return count
}
//执行命令(查)
fun executeQuery(sql: String?) {
pstat = conn?.prepareStatement(sql)
rs = pstat?.executeQuery(sql)
while (rs!!.next()) {
val sno = rs!!.getObject(1)
val sname = rs!!.getObject(2)
println("$sno....$sname")
}
closeAll(rs, pstat, conn)
}
}