RSS
Search
-
Recent Posts
Recent Comments
- Cedric Vander on Lingoes 2.7: a good choice for english study
- stingh711 on Lingoes 2.7: a good choice for english study
- Lartiste on Lingoes 2.7: a good choice for english study
- sting on Lingoes 2.7: a good choice for english study
- Lartiste on Lingoes 2.7: a good choice for english study
Categories
- blogging (4)
- database (1)
- diary (8)
- emacs (1)
- english (10)
- evernote (2)
- free (7)
- grails (1)
- ipod (12)
- java (23)
- jedit (9)
- link (1)
- love (1)
- management (5)
- memo (9)
- movie (1)
- photography (15)
- powershell (1)
- productivity (7)
- reading (2)
- self-management (9)
- software (25)
- vim (4)
- web-develop (2)
- webutils (8)
Tags
ajax anki apple canon console d300s d3000 diary english evernote firefox fish G10 game google reader grails grd gtd info instapaper ipad iphone ipod java jedit love management maven java MJ mysql nikon photo photography plugin productivity quartz search engine spring srs tab touch up vim web wordpressArchives
Top Posts
My delicious
My Shares on Google Reader
Category Archives: grails
Grails很不错
最近帮别人写一个小的项目,因为要求开发速度。用java从头开始写实在是太慢了,django和rails我虽然碰过一点,不过没写过很完整的东西。在时间比较紧的时候,实在是没什么信心。Grails好歹我也是搞java的,spring和hibernate也都熟悉。所以决定先试试看。 ACID这个不用说,很简单,生成出来的gsp页面也比rails的好懂。Entity mapping,也比较容易。常用的几种已经support得很好了。Controller这层和rails,django都差不多。不过我还没搞清楚什么时候要用render,什么时候直接return,什么时候用redirect。Gsp和jsp差不多。还试了一下ajax,简单的例子很快就跑通了。 在折腾了大概一个星期的业余时间,基本上把这个小程序搞定了。如果换作用java做,估计一周也就够把框架搭起来,把一个类的acid跑通吧。 现在想想,java真是太笨重了。想想写一个简单的acid要多费功夫吧。而且要学习的东西实在太多了。Jsp,servlet,至少一个mvc框架,hibernate,spring,还有比如说像maven或者ant这样的build tool。所以,还是很希望grails可以好好的发展。毕竟有java的api在后面支持着,只要performance不差,bug也不那么多。还是会很有前途的。不过spring被vmware收购了,好像grails的前途有点不明朗啊。 接下来的一段时间,应该会把grails好好的学习一下。这里,推荐一下grails in action,例子简单清楚,比较连续完整,而且可以运行。 BTW,在开发里面还是遇到了几个问题。一个是one to one,我已经在另外一边设了belongsTo,但cascade save还是不work。One to many就没有问题。另外一个,在unit test里面,一调用domain类的save或者其他dao的方法,就会报错说xxx method is not applicable for domain xxx,但是在integration test里面就work正常。所以现在测dao的东西,我都只用integration test。还有一个就是,不能单独运行某个test case,每次测试都要把所有的test case都跑一遍。