of Grails • And a set of Spring Boot plugins • Required modularisation of codebase • Reduction of external dependencies • Simplification of GORM setup 12
a dependency ! ! ! ! • Then add persistent entities that are annotated with grails.persistence.Entity 17 compile "org.grails:gorm-‐hibernate4-‐ spring-‐boot:1.0.0.RELEASE"
a dependency ! ! ! ! • Then add persistent entities that are annotated with grails.persistence.Entity 18 compile "org.grails:gorm-‐mongodb-‐spring-‐ boot:1.1.0.RELEASE"
readers and writers to transform data when written or read from the database. 26 class Name { String title static mapping = { title write:'UPPER(?)', read:'REPEAT(title, 2)' } }
helpful to isolate these blocking operations on a separately managed thread • Work underway in some NoSQL datastore on fully asynchronous drivers (MongoDB, CouchDB etc.) • No usable asynchronous SQL/JDBC drivers on the horizon (to my knowledge) 27
support ! ! ! • Provides HibernateTestMixin that will load Hibernate inside a unit test 41 test "org.grails:grails-‐datastore-‐test-‐ support:1.0-‐grails-‐2.4"