Kurs i

Grails Intermediate

I denna fortsättningskurs om Grails lär du dig om testing av Grails applikationer, interceptorer och allt du behöver om GORM för att fullt utnyttja Hibernate ORM. Vi går sedan igenom hur du på bästa sätt använder och konfigurerar Assets pipeline för CSS, JS och bildfiler. Till slut går vi igenom praktiska aspekter av att driftsätta Grails applikationer på en applikationsserver.

Detta får du lära dig på kursen
  • Testing with Spock
  • Grails build scripts with Gradle
  • Everything about GORM
  • NoSQL databases with Grails
  • Writing your own plugins
Innehåll

The Gradle build system

  • What is Gradle and how is it relevant to Grails
  • Build scripts
  • Dependencies
  • Usage of plugins and 3rd party libraries
  • Gradle tasks

Grails Testing

  • How is testing supported in Grails
  • Test phases
  • Overview of Spock and how to write test specs
  • Unit testing
  • Testing controllers, services and tags
  • Usage of mock domain classes
  • Limitations of unit testing domain classes
  • Integration testing
  • The key difference between integration and unit tests
  • Configuring a test database
  • Testing domain classes
  • Functional testing
  • Overview of Geb and how to make HTTP test invocations

URL Mapping

  • Changing the default URL mapping rules
  • Handling URL aliases
  • HTTP errors handling
  • REST API mappings

Interceptors

  • What is an interceptor
  • Before and after actions
  • Mapping interceptors to controllers and actions
  • Matching URIs
  • Interceptor ordering
  • Typical authentication interceptor

GORM Relations

  • Understanding GORM and Hibernate
  • Understanding the Hibernate SessionManager
  • 1-1
  • 1-M
  • M-1
  • M-M
  • Embedded types
  • Inheritance
  • Link types

GORM Queries

  • Dynamic finders, findBy* and findAllBy*
  • Where queries
  • Criterias
  • Named queries
  • Raw SQL queries
  • Eager vs lazy fetching

GORM Events

  • Auto timestamping
  • Before and after events

Grails and Spring/Hibernate configuration

  • The Spring bean-factory
  • Configuring spring beans
  • External properties
  • Hibernate tweaking

The Assets pipeline

  • Overview of how the assets pipeline works
  • Handling lib dependencies
  • Manifests
  • Using stylesheet libraries
  • Using javascript libraries
  • Asset linking
  • Precompilation
  • Usage of additional assets plugins, such as LESS, CoffeScript and more

Plugins

  • Grails plugins
  • Writing your own plugin
  • Designing an application as a set of module plugins
  • Providing artefacts
  • Hooking into life-cycle events

Grails Application Profiles

  • What is a application profile
  • Overview of the default Web profile
  • Overview of the REST WS profile
  • Overview of the Angular profile
  • Overview of the Plugin profile
  • Writing your own profile

Deployment

  • What to consider before production deployment
  • Generation of a production WAR
  • JNDI data sources
  • Deployment to Tomcat
SnabbFakta
Namn
Grails Intermediate
Längd
2 dagar
Nivå
Intermediate
Målgrupp
Grails webbapplikationsutvecklare
Förkunskaper
Praktiska erfarenheter avseende programmering av webbapplikationer i Grails, motsvarande våra grundkurser i Grails och Groovy.
Teknisk miljö
  • Grails, version 3.x
  • JetBrains Intellij IDEA Ultimate
  • Java JDK, version 8
  • Tomcat
Relaterade Kurser
KursLängdNivå
Groovy Basics2 dagarBeginner
Spock Tests1 dagar Intermediate
Grails for Web Apps 3 dagarBeginner
Grails for REST Web Services Apps2 dagarAdvanced
Schemalagd Kurs

Pris

14000 kr + moms

Vi ger 20% rabatt för tillkommande deltagare från samma företag på samma kurstillfälle. Läs mer om vår samma-företags-rabatt.

Aktuella KursDatum
Startdatum Plats
18 apr 2017 Stockholm City
22 maj 2017 Stockholm City
19 jun 2017 Stockholm City
Företagsintern Kurs

Om du beställer en företagsintern kurs kommer vi till er och håller kursen i era egna lokaler. Priset bestäms av vår prismodell och baseras på antalet kursdagar, antalet deltagare, samt i förekommande fall resa och logi.

Prisexempel för NN deltagare

PPP kr + moms

Antal
Område

Läs mer om vår prismodell och beställningsvillkor.