我是靠谱客的博主 高大往事,最近开发中收集的这篇文章主要介绍groovy mysql_使用Groovy的sql模块操作mysql进行多种查询,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

连接数据库,这里要创建一个sql实例来操作数据库,必须加载jdbc驱动包,使用两个注解,否则会报错:

import groovy.sql.Sql

url='jdbc:mysql://localhost:3307/test?useUnicode=true&characterEncoding=utf8'

driver='com.mysql.jdbc.Driver'

username='root'

passwd='123456'

//可以指定maven仓库

//@GrabResolver(name = 'aliyun', root = 'http://maven.aliyun.com/nexus/content/groups/public/')

//加载数据库连接驱动包

@Grab('mysql:mysql-connector-java:5.1.25')

@GrabConfig(systemClassLoader = true)

//创建sql实例

def sql = Sql.newInstance(url, username, passwd, driver)

查询:

eachRow: 对结果在闭包中进行处理:

sql.eachRow("select * from `user`") {

println it[0] //可以按表字段从左到右依次下标访问

println it.name //直接按字段名访问

}

//支持元数据闭包显示

sql.eachRow("select * from `user`",{ meta->

//元数据闭包只会调用一次

meta.columnCount.times {

print meta.getColumnName(it+1)+" "

print meta.getColumnClassName(it+1)+" "

print meta.getColumnDisplaySize(it+1)+" "

print meta.getColumnType(it+1)+"---"

println meta.getColumnTypeName(it+1)

}

}) {

//可以按表字段从左到右依次下标访问或者字段名字访问

println it[0]+" "+it.name

}

可以看到输出:

d87faa0dcd921d0fdc553659a5aa7605.png

还有rows等查询方法,支持非常多的重载方法,可以根据需求传入各种参数,和jdbc用法基本都一样,比如:

println sql.rows(['id':3],"select * from `user` where id>:id").size() //map参数

println sql.rows("select * from `user` where id>?",[3]).size() // list参数

println sql.firstRow("select * from `user`") //返回第一个

a46f0ca64966a6569f754e46406dd0fb.png

最后贴上表结构:

dbc3668fbddddaff74fa2bedee7b5c5c.png

最后

以上就是高大往事为你收集整理的groovy mysql_使用Groovy的sql模块操作mysql进行多种查询的全部内容,希望文章能够帮你解决groovy mysql_使用Groovy的sql模块操作mysql进行多种查询所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部