Duration:

5 days

Audience:

Employees of federal, state and local governments; and businesses working with the government.
Experienced developers who need to understand how and when to use Groovy in Java and J2EE applications.

Course Outline:

This course is designed for Java developers who need to understand what Groovy and the Grails framework are and how to use them with today’s systems and architectures. In this course, you will be introduced to the Groovy language. You will gain an understanding of how Groovy works and the Groovy language syntax. You will examine the Groovy syntax and the components and architecture of the framework. The combination of hands-on exercises and open discussion will help you quickly understand the Grails framework and how it increases productivity.

What You’ll Learn:

  • Write applications using Groovy
  • Groovy operations within the Java Virtual Machine
  • Incorporate existing Java classes and libraries within Groovy applications
  • Add new methods and member variable to existing Java or Groovy classes
  • Role of closures within Groovy
  • Groovy’s simplified object configuration syntax
  • Override operators for Groovy or Java classes
  • Concept of Metaprogramming and how to leverage it to simplify application development
  • Explore Groovy’s Regular Expression syntax for easily managing String processing
  • Write applications using Grails
  • Grails operations within the context of Java, Spring, Hibernate, and other technologies
  • Configure and run Grails applications
  • Add new views and controllers
  • Domain modeling and validators
  • Work with controllers, data scopes, GSP, and filters
  • Install and use plug-ins

Course Outline:

1. Language

  • Groovy
  • Groovy Concepts
  • Installing
  • Running Groovy Scripts

2. Basic Syntax and Scalar Variables

  • Syntax Rules
  • Numbers
  • Strings
  • Operators

3. Collections

  • Lists
  • Coding a Closure
  • Maps
  • Ranges

4. Flow Control

  • If Statements
  • Switch Statements
  • While Loops
  • For Loops
  • Exceptions

5. Classes

  • Defining Classes
  • Member Variables
  • Methods
  • Operator Overloading
  • Automatic Constructor Generation
  • Closure Groovy Class
  • Coding a Method That Expects a Closure

6. Advanced Classes and Closures

  • Closures
  • Operator Overloading
  • Metaprogramming

7. Regular Expressions

  • Regular Expression Syntax
  • The =~ operator
  • The ==~ operator
  • Common Methods That Use Regular Expressions

8. Builders and Slurpers

  • NodeBuilder
  • MarkupBuilder
  • AntBuilder
  • Creating Custom Builders
  • Using the ConfigSlurper
  • Writing a Slurper

9. Grails Installation

  • Technologies Included with Grails
  • Main Ccomponents of a Grails Application

10. Creating a Simple Grails Application

  • The Create-App command
  • Configuring the Application
  • Create a Domain
  • Getting Started with the Grails Scaffolding
  • Generate Views and a Controller with Create-All
  • Create a Basic Controller
  • Running the Application
  • Unit Tests

11. The Domain

  • Modeling Relationships – BelongsTo, Mapping, and HasMany
  • Validators – Constraints
  • GORM

12. Controllers

  • Navigation
  • Returning Data to the View
  • Calling a Controller Method from the View
  • Scopes
  • Working with Redirects
  • Creating and Using Services
  • Binding Properties to Domain Objects
  • Command Objects

13. GSP Basics

  • How GSPs Work
  • Common GSP Tag Libraries
  • Custom Error Messages
  • Rendering and Processing Forms
  • Writing Custom Tag Libraries
  • Working with Layouts

14. Filters

  • Creating Simple Filters
  • Assigning a Filter to Actions on a Controller
  • Assigning a Filter to a URI
  • Defining When a Filter Executes

15. Plug-Ins and a Simple Web 2.0 Applications

  • Plug-In
  • Installing a Plug-In
  • Integrating the Zk framework into GSP pages