Grails project lead Graeme Rocher delivers an update on Grails 3 including the latest features of GORM. Grails 3.2 introduces AngularJS scaffolding and support for RxJava and MongoDB in GORM amongst other new features.
4. Grails 3 Status Update
• Grails 3.1.8 current release of 3.x
line
• Grails 3.0.x and 2.x in
maintenance mode
• Grails 2.x plugins being migrated
(the good ones)
7. Grails 3 Recap
• New architecture - Spring Boot,
Gradle, Profiles
• Same philosophy - Conventions,
DRY, Plugins
3.0
8. Application Profiles
• Not just web applications
• REST APIs, SPA, Big Data, Micro
Services
• The world has changed!
• Expand Grails’ reach
9. Grails 3 Feature Recap
• Grails 3.0.x a solid base for the future
• Foundational components stable
• Great time to jump into plugin
development
• Improvements coming all the time!
10. Then came Grails 3.1
• Spring Boot 1.3, Spring 4.2
• Massive improvements to profiles
• REST (Web API) Profile
• AngularJS Profile
• GORM 5
11. Announcing Grails 3.2
• RxGORM
• MongoDB 3.0 RX driver support
• RxGORM REST client
• GORM Multi Tenancy
• GORM for Neo4j 3.x / Bolt support
• AngularJS scaffolding
• Further refinements to REST support
12. Profile Improvements
• New Gradle Plugins
• Now just JAR files
• A Profile for creating Profiles!
• Extensibility
13. The REST Profile
• Easy creation of REST APIs
• Easy customisability with JSON views
• Security support with spring-security-rest
• Integration unit and functional testing
14. The REST Profile
• Profile specific commands:
• create-domain-resource -
creates an @Resource domain
• create-restful-controller -
Creates a RestfulController
• Default commands provide focused
templates
17. JSON Views
• Restoring the V in MVC
• Fast, flexible and expressive
• Pre-compilation for production environments
• Grails 3.2: Template inheritance, global
templates, HAL pagination and more
• Find out more http://views.grails.org/1.1.x
18. The AngularJS Profile
• Extends the REST profile
• Adds project setup for AngularJS
• Code generation for AngularJS
• Grails 3.2: AngularJS scaffolding
19. The AngularJS Profile
• Profile specific commands:
• create-ng-controller - Creates
an AngularJS controller
• create-ng-service - Creates an
AngularJS service
• Default commands provide focused
templates
22. GORM 5 - Hibernate
• Support for Hibernate 3, 4 and 5 (and
5.1)
• Completely rewritten and based on
traits
• Grails 2, Grails 3, Spring Boot or
Standalone
23. GORM 5 - MongoDB
• Rewritten for MongoDB 3.x driver
• Uses codecs to avoid Document to
Object conversion (much faster)
• Grails 2, Grails 3, Spring Boot or
Standalone
24. GORM 5 - Neo4j
• Rewritten for Neo4j 2.3.x
• Robust Cypher and Transaction support
• Embedded, REST & HA modes
supported
• Grails 2, Grails 3, Spring Boot or
Standalone
25. Announcing GORM 6 Suite
• RxGORM
• MongoDB RX Support
• RxGORM REST Client
• Neo4j 3.x / Bolt Driver
• Native Multi Tenancy
3.0
28. Summary
• Big plans in the future for profiles and
the Grails platform
• Grails evolving to tackle new challenges
• The Grails community and plugin
ecosystem as important as ever