Groovy之旅系列之六(Groovy Sql)

这是一篇关于Groovy Sql的文章.如果你没jdbc的基础也没有关系.
它是一门新的语言,可以在string里面包含变量 .
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> num  =   3
println(
" There is a ${num} " );
println(
" There is a ${22/7} " )
println(
" There is a  "   +  num)
正如你所看到的,在${}里面的东西,groovy都会把它解释成groovy expressions.

假设你的数据库有person表,这里用的是SqlServer2000,字段有id,username,password,age.

来看看我们的第一个Groovy Sql:
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->
import groovy.sql.Sql;
sql  =  Sql.newInstance("jdbc:jtds:sqlserver: // localhost / pubs","sa","","net.sourceforge.jtds.jdbc.Driver");
sql.eachRow("
select   *   from  person",
    {
        println it.id 
+  " --  ${it.username} -- ${it.password} -- ${it.age}"
    }
);
第一句是导入相应的包,这和Java没什么区别.
第二句根据所传入的url,username,password,jdbc driver.得到一个Sql 对象.
然后根据这个sql对象进行查询,具体操作可以去查看groovy api.

没想到groovy到数据库的操作竟是如此简单,太强了.

我们再来看看它的firstRow方法:
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> row  =  sql.firstRow(" select  username,password  from  person");
println "Row: username 
=  ${row.username}  and  password  =  ${row.password}";

让我们来试试再复杂一些的数据库操作吧.

往数据库插入一条记录的多种写法:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> username  =  "cc"
password 
=  "gg"
sql.
execute (" insert   into  person (username, password)  values  (${username}, ${password})")
sql.
execute (" insert   into  person  values  ( ' admin ' , ' admin ' , 99 )");
sql.
execute (" insert   into  person (username,password)  values  (? , ?)", [ username,password ] );

修改或删除数据库记录:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> id  =   1 ;
sql.
execute (" update  person  set  username  =   ' dddd '   where  id  =  ?", [ id ] );
sql.
execute (" delete   from  person  where  id  =  ?", [ 2 ] )


Groovy对数据库的操作就是如此简单,现在就让我们去感受他的魅力吧.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值