posted 10 years ago
Shemida,
I've laid it out in some of the other posts this week, but - the main thrust of the difference is that although you're using Spring and Hibernate under the covers with Grails, and you get nice concise Groovy language features, you're essentially still doing Hibernate + Spring.
With Roo, all they are doing is pulling the boilerplate away from you by building generated aspectJ files, and weaving them in at compile time to your beans. They are also giving you commands to easily configure and add elements to your project in a shell. So in a way, that is similar to Grails, but realistically you're never leaving the Spring sandbox, and not abstracting away the container or Spring into another domain specific language. And finally, they open up the command set for extension by writing your own OSGi-based add-ons which you can install in the shell.
Chapter 1 of the book (online and free) walks through this so you can get a good idea from there of what it's like. Chapter 2 goes through an interactive example. Also, another free chapter, 3, shows the entity model, and you can see how it is different than the Grails domain model. We get into relationships in another paid chapter, 4, but everything else is there in chapter 3. Those are at manning.com/springrooinaction
Best,
Ken