Groovy & Grails
Prince Of Java Empire
Groovy高效编程——导出Oracle的package源码
摘要: 平时常会使用Toad9.0导出package源码文件(即pks文件),但Toad9.1似乎没有这项功能了,为此我用Groovy写了一个小程序。
源码如下所示:
阅读全文
posted @
2008-06-19 22:47 山风小子 阅读(1270) |
评论 (0) 编辑
Groovy高效编程——使用Mock & Stub简化测试
摘要: 对程序进行单元测试时,有时我们会遇到一些小麻烦,比如某些操作十分耗时,有些依赖的对象不易获取等等,这时我们就可以通过Groovy Mock或Groovy Stub来解决这些问题。Mock对方法调用的次数十分敏感,如果程序中调用的次数不在期望的调用次数范围内,则会抛出异常以致测试失败;而Stub仅仅是起到‘替身’的作用,它并不关心方法调用与否,即使方法一次都没被调用,也不会抛出异常导致测试失败。
下面让我们来看一个实际的例子吧:
阅读全文
posted @
2008-06-13 23:25 山风小子 阅读(1817) |
评论 (2) 编辑
Groovy高效编程——DSL实战(更新于2008.05.25)
摘要: 在Java中调用存储过程是一件比较繁琐的事情,为了提高开发效率,我写了一个针对Oracle存储过程调用的DSL。用法和代码如下所示:
阅读全文
posted @
2008-05-24 18:12 山风小子 阅读(1901) |
评论 (4) 编辑
Groovy高效编程——创建DSL
摘要: 利用Groovy与生俱来的动态特性,创建DSL(Domain Specific Language)是一件十分容易的事情。
下面通过一个例子,向大家展示一下用Groovy创建DSL的优雅之处:
阅读全文
posted @
2008-05-17 00:38 山风小子 阅读(1512) |
评论 (0) 编辑
Groovy 1.6.0 BETA 1 发布了!性能有显著提升!
摘要: Groovy 1.6.0 BETA 1终于发布了,除了一些BUG修正外,最令人兴奋的是,Groovy的运行效率有了显著的提升。官方用Great Language Shootout的基准测试得出Groovy 1.6.0 BETA 1的性能相比Groovy 1.5.6 GA,提升了150%~460%。
我利用Groovy 1.6.0 BETA 1将下面解决八皇后问题的代码执行10次,结果如下:
Groovy1.5.6GA : 1360 1156 969 1000 1063 1110 938 1046 1031 954 1062.7
Groovy1.6.0BETA1: 187 171 141 109 187 156 172 141 203 187 165.4
经过计算,Groovy1.6.0BETA1的性能相比Groovy1.5.6GA,提升了542.5%。
阅读全文
posted @
2008-05-03 11:52 山风小子 阅读(1427) |
评论 (5) 编辑
Grails赢得JAX二等奖
摘要: 去年即2007年Groovy赢得了JAX一等奖之后,今年Grails赢得了JAX二等奖。
这不论是对Groovy语言还是Grails框架都是一种肯定...
阅读全文
posted @
2008-04-27 16:17 山风小子 阅读(1463) |
评论 (7) 编辑
Groovy 1.5.6 GA 发布了!
摘要: Groovy1.5.6GA是继Groovy1.5.5GA之后的又一个bug修正版。该版本除了修正一些bug外,还有一个很重要的改进,那就是行号问题。Groovy现在已经能够更好地提供行号信息了,所以我强烈建议所有的Groovy开发者都升级到这个版本,尤其初学者。
阅读全文
posted @
2008-04-26 12:10 山风小子 阅读(1314) |
评论 (0) 编辑
一道Google算法题的解答
摘要: 写一个算法生成n位编码的编码串(结果有多种,任意一种都可以接受)并且符合如下条件:相邻的两个编码之间有且只能有一位不同,并给出时间与空间复杂度
比如 2位的二进制的编码生成的编码串:00 01 11 10
比如 3位的二进制编码生成的编码串:001 011 111 101 100 110 010 000
阅读全文
posted @
2008-04-20 21:13 山风小子 阅读(1574) |
评论 (11) 编辑
Groovy轻松入门——Grails实战之GORM DSL篇
摘要: Grails中的GORM是一个基于Hibernate开发出来的崭新ORM框架,其优点就是无需任何配置。但早期的GORM有个不太方便的地方,就是如果想Grails自动创建的表名和字段名是由自己制定的,那么我们就不得不使用hibernate的映射文件,这样就又用回hibernate了。幸好 Grails1.0提供了让我们DIY表和字段的DSL,使我们可以彻底摆脱XML配置文件的阴影。
遵循“Groovy轻松入门系列”的一贯做法,下面还是以一个实例来说明GORM DSL到底是怎么回事,它会带给我们多大的便利。
阅读全文
posted @
2008-04-04 00:53 山风小子 阅读(1377) |
评论 (5) 编辑
grails-cache插件——简介
摘要: grails-cache插件项目发起于2007年7月,由于James和我两人都很忙,中间中断过一些时间。
几个星期前,我将整个grails-cache重写了一下,这周末将我们Team新成员Bakhtiyor所写的另外一个插件的一些功能整合进来,并作了一些小重构。
现在对该插件的功能做一些介绍:
阅读全文
posted @
2008-03-30 23:16 山风小子 阅读(1389) |
评论 (4) 编辑
Grails 1.0.1 Final发布了
摘要: Grails1.0.1是Grails1.0发布以来的第一个bug修正版本,主要解决了编码问题和日志问题。
阅读全文
posted @
2008-02-19 20:08 山风小子 阅读(1663) |
评论 (7) 编辑
Groovy高效编程——用Gant替代Ant(更新于2008.02.18)
摘要: Ant的威力在Java界无人不知,无人不晓。可惜想在Ant的build.xml中处理逻辑很不方便,幸好在Groovy界出现了Gant (Groovy + Ant),使我们能够像写普通程序那样编写脚本。本文讲解了如何将您所拥有的Ant知识应用到Gant中,并利用Gant大大提高开发效率。
阅读全文
posted @
2008-02-16 17:58 山风小子 阅读(1728) |
评论 (4) 编辑
[转载]Grails 1.0 Released: Productive Web App Development on the JVM
摘要: The Grails team and G2One, the Groovy/Grails professional services company, have just released the final 1.0 version of Grails, the agile web application development stack, built on best of breed Open Source components such as the Groovy dynamic language, the Spring framework, and the Hibernate ORM solution.
阅读全文
posted @
2008-02-11 16:41 山风小子 阅读(553) |
评论 (0) 编辑
Groovy 1.5.2发布了!
摘要: Groovy1.5.2是Groovy1.5.0发布后的第二bug修正版本(类似于JDK1.5update2),旨在进一步提高Groovy的品质,除了Groovy1.5.1和Groovy1.5.2这两个bug修正版本外,还有最后一个bug修正版本Groovy1.5.3。
最近Groovy Team正致力于提升Groovy的性能,他们研发出了call site缓存技术,能显著提升Groovy的整体性能,
部分测试显示Groovy的性能提升了2~4倍,这与应用场景相关。
这些优化我们将在Groovy1.6中便可体验到 :)
下载:http://dist.groovy.codehaus.org/distributions/groovy-binary-1.5.2.zip
下面是Groovy1.5.2修正和改进的内容:
阅读全文
posted @
2008-01-30 21:50 山风小子 阅读(1587) |
评论 (6) 编辑
Full Groovy & Grails Archive