What do you like best about Grails?
0. Can use any existed java library.
1. Groovy 's advantage (than java):
(0) Metaprogramming
(1) more efficient operators ( Elvis operator, Safe navigation operator etc. )
(2) more useful method to JDK classes ( such as Collection#find()), more
(3) can use much DSL ( can do same things with less code)
2. GORM is the bettern than using mybatis/hibernate in java app development.
3. easy to conver between map,list and json,xml.
4. Gsp is better than jsp——but I more intend not to use both at all. Instead, Grails app should response json data only. Html page can be developed by another app (using sass, angularJs, gulpjs etc), using ajax or jsonp to access json data.
Review collected by and hosted on G2.com.
What do you dislike about Grails?
0. Most grails's plugin not better enough, less actived, lack document, obsoleted. e.g. :
(1) I prefer to use RestTemplate,UriComponentsBuilder provided by SpringFramework —— which is simple enough, solid, can be used in both java and groovy, rather than Grails REST Plugin
(2) I don't think using spring security plugin is better than using Spring Security framework directly in resources.groovy —— Because , beside to learn Spring Security framework , I had to lean the plugin too (for debuging problems). Maybe, it should focus on Spring Security's extension, not the configuration?
1. Easy to start, hard to deep in.
Grails's wrapped much known Java libray, framework —— such as Spring framework, Spring security, etc。Without much knowledge about Spring Security, I don't think a java/grails beginner can well config the plugin. Only those who had famillar JVM, the libraries Grails used, can play around Grails.
2. Grails 2's build mechanism (Gant, but Grails 3 is using gradle)
3. Grails 2's plugin mechanism (Still studying Grails 3)
PS: I also quested what about using Spring Boot + Groovy + GORM (without Grails) —— since most grails module has announced it can be used outside Grails. I'am more familiar SpringFramework. Review collected by and hosted on G2.com.