CHAPTER 7: Rapid Web Development with Grails 301
(^1) http://www.h2database.com/html/main.html
(^2) http://wiki.sitemesh.org/display/sitemesh/Home
Note ORM is a way to map objects from the OO world onto tables in a relational database and provides an
abstraction above SQL.
Plug-Ins
Instead of providing out-of-the-box solutions for every possible requirement, Grails offers a plug-in
architecture, and you can find plug-ins for a plethora of functionalities.
Unit Testing
For improving the quality of the deliverables, Grails provides unit tests, integration tests, and functional
tests for automating the web interface.
Integrated Open Source
Grails integrates industry-standard and proven open source frameworks, several of which are briefly
described in this section.
Table 7-1 illustrates the frameworks that Grails leverages.
Table 7-1. Frameworks That Grails Leverages
Integrated Open
Source Technology
Description
Ajax frameworks Grails ships with the jQuery library but also provides support for other frameworks
such as Prototype, Dojo, Yahoo UI, and the Google Web Toolkit through the plug-in
system.
Hibernate Hibernate is an ORM framework that provides the foundation for GORM.
H2 Grails uses the in-memory H2^1 database and enables the H2 database console in
development mode (at the URI /dbconsole) so that the in-memory database can be
easily queried from the browser.
Spring Spring Framework provides an application level of abstraction on top of the Java
EE API. Grails developers can build an application that internally uses Spring and
Hibernate without knowing these frameworks. Grails abstracts most of the details of
these frameworks from Grails developers.
SiteMesh SiteMesh^2 is a layout-rendering framework that implements the Decorator design
pattern for rendering HTML with headers, footers, and navigation elements. Grails
abstracts most of the SiteMesh details from the Grails developer.
Tomcat By default, Grails uses an embedded Tomcat container.