• Decrease font size
  • Default font           size
  • Increase font size

Web Development with Grails

Print E-mail

Web Development with Grails               151

This course teaches experienced web developers how to use the Grails framework to rapidly create sophisticated web applications.

Prerequisites

  • Solid Java programming skills are essential.
  • Knowledge of traditional Java web development, using servets, JSP, and JDBC, is required. Preparatory courses would be Java Servlets, Introduction to JSP and JDBC Programming.
  • Knowledge of Groovy is assumed – consider Groovy for Java Developers -- but it is reviewed at the beginning of this course.

Course Objectives

  • Develop Model/View/Controller web applications using Grails.
  • Access relational databases from Grails.
  • Work with existing Java classes and libraries.
  • Build unit and functional tests for web applications.

Timeline: 4 days.

Chapter 1. Groovy Fundamentals

  • Differences Between Groovy and Java
  • Declaring Classes
  • Using Assertions
  • Strings
  • Closures
  • Lists and Maps
  • Expando Objects
  • Ranges
  • Metaprogramming
  • Builders

Chapter 2. Grails Project Structure

  • Overview of a Grails Project
  • Directories for Model Classes, Views, and Controllers
  • Data-Source Configuration
  • Logging
  • Command-Line Utilities
  • IDE Integration

Chapter 3. Application Entities

  • Object/Relational Mapping with GORM
  • Optional Properties
  • Constraints and Validation
  • Modeling Relationships
  • CRUD Operations
  • Dynamic Queries
  • Connection to Hibernate

Chapter 4. Scaffolding

  • Dynamic Scaffolding
  • Working with the Dynamic Operations
  • Static Scaffolding
  • Generating Controllers
  • Generating Views

Chapter 5. Controllers

  • Setting the Default Action
  • Accessing Request Attributes
  • Flash Scope
  • Data Binding and Type Conversion
  • Rendering a Response
  • Action Interception

Chapter 6. Groovy Server Pages

  • Groovy Scriptlets
  • Built-In Grails Tags
  • Dynamic Tags
  • Layouts and Templates
  • Pagination
  • Creating Custom Tags

Chapter 7. Ajax Support

  • Ajax Basics
  • Handling Events
  • Ajax Tags

Chapter 8. Services and Jobs

  • Transactions
  • Services and Dependency Injection

Chapter 9. Java Integration

  • ORM Integration with Hibernate
  • Dependency Injection with Spring
  • Legacy Databases

Appendix A. Learning Resources