Voici mes propositions concernant la FAQ Grails :
I) Généralités
Grails est un framework de développement web basé sur le pattern MVC écrit en Groovy.
- GRAILS est-il OpenSource ?
Oui, il est sous license Apache2.La société OCI permet d’avoir un support ou des formations.
Grails a été créé par Graeme Rocher puis d’autres développeurs l’ont rejoint : Guillaume Laforge, Marc Palmer, Dierk Koenig, Steven Devijver
Il n’est pas nécessaire de choisir entre Grails et SpringBoot car SpringBoot est inclu dans Grails
- Quel est le langage utilisé par Grails ?
Grails utilise Groovy.Si vous venez de l’univers JAVA, vous n’aurez aucun problème de langage car Groovy supporte nativement la syntaxe de JAVA.
- Quels sont les avantages de Grails ?
- Convention over configuration
Grails apporte de nombreuses configurations et comportements par défaut qui permettent de mettre en place très rapidement une application.
- Grails se base sur le framework MVC
- Grails se base sur des technologies récentes telles que Spring, Hibernate
II) Mise en place d’une première application
a) Création d’une application
- Comment créer une application de base ?
Vous pouvez créér une application web en seulement quelques commandes :
1 2 3 4
|
grails create-app helloworld
cd helloworld
grails run-app |
Vous pouvez ensuite accéder à l’application : http://localhost:8080/helloworld/.
- Comment ajouter un contrôleur ?
grails create-controller Book
Cette commande crée un controlleur avec les classes de tests correspondantes.
- Comment ajouter une classe de domaine ?
grails create-domain-class Book
Cette commande créée la classe de domaine Book avec les classes de tests correspondantes.
- Comment utiliser le mode console ?
Le monde console vous permet d’exécuter diverses commandes dans la console Grails.
Il suffit de saisir la commande suivante dans une console en se positionnant dans le répertoire de l’application :
b) Les fichiers de configuration à connaître
C’est le fichier central utilisé par Gradle.Il va contenir toutes les dépendances nécessaires au projet.
Ce fichier est central.Il va regrouper les configurations qui concernent par exemple la base de données, les logs; GORM, le démarrage.
Graills utilise logback comme framework de logging.Le fichier de configuration est le suivant :
grails-app/conf/logback.groovy
III) Le modèle MVC
a) La persistence
L’implémentation ORM de Grails s’appelle GORM.Elle permet de réaliser un mapping de classes avec les tables de la base de données.Cette version s’appuie sur un standard de la persistance : hibernate.
Comment configurer la persistence pour une base Mysql ?
Il suffit de mettre à disposition la librairie pour Mysql en ajoutant la ligne suivante dans le fichier build.gradle.
1 2 3
| dependencies {
//..
runtime 'mysql:mysql-connector-java:X.X.X' |
Puis de modifier le fichier application.yml :
1 2 3 4 5 6 7 8 9 10 11 12
| dataSource:
pooled: true
jmxExport: true
driverClassName: com.mysql.jdbc.Driver
dialect: org.hibernate.dialect.MySQL5InnoDBDialect
username: sa
password: testing
environments:
development:
dataSource:
dbCreate: update
url: jdbc:mysql://127.0.0.1:3306/myapp |
b) La vue
GSP ( Grails Server Page ) est une technologie pour le rendu des pages.Le principe de fonctionnement est identique aux JSP mais de manière beaucoup plus simple.Les GSP s’appuie sur un certain nombre de tags pour l’initialisation,l’itération,les formulaires...
- Comment effectuer une itération ?
Il est possible de réaliser des itérations sur des variables ( par exemple des variables passées au travers du contrôleur.Voici un exemple :
1 2 3
| <g:each in="${[1,2,3]}" var="num">
<p>Number ${num}</p>
</g:each> |
c) Le Controller
- Comment passer un paramêtre à la vue ?
La syntaxe est la suivante :
1 2 3 4 5
| class BookController {
def show() {
[book: Book.get(params.id)]
}
} |
Dans la gsp, il sera alors possible d’utiliser la variable book.
Partager