Le framework Spring Boot permet de créer rapidement des API Rest solides selon une architecture de code respectant le modèle MVC. Dans ce document, la structure principale ainsi que ses éléments principaux seront présentés de façon à construire graduellement le squelette d'une API Rest.
Il nous permet d'exécuter des requêtes SQL, sans avoir besoin de les écrire. Comme à notre habitude, expliquons : @Repository est une annotation Spring pour indiquer que la classe est un bean, et que son rôle est de communiquer avec une source de données (en l'occurrence la base de données).
Création d'un Controller
La méthode Post va récupérer les données un formulaire puis de créer un nouveau message et l'ajouter à notre liste de message et nous rediriger au get et cela affichera le nouveau message sur la page web. Aller il est temps de voir comment cela fonctionne du coté view.
1- Qu'est-ce que c'est Spring Boot? Spring Boot est un projet qui se trouve sur la couche de IO Execution la couche de Spring IO Framework. Spring Boot est une étape avancée qui implifier le démarrage et le développement de nouvelles applications Spring. Avec Spring Boot, des configurations de Spring sont atténuées.
Un Bean est un objet qui est instancié, assemblé et géré par Spring IoC Container. IoC (Inversion of control), est un processus qui définit les dépendances d'un objet sans avoir à les créer. C'est lors de la création des objets, que Spring va injecter les Beans entre eux afin d'avoir toutes leurs dépendances.
L'annotation @Autowired. L'annotation @Autowired permet d'activer l'injection automatique de dépendance. Contrairement au mode autowiring en XML, il n'est pas possible de définir une stratégie à appliquer. Cette annotation peut être placée sur un constructeur, une méthode ou directement sur un attribut.
Spring Data s'organise autour de la notion de repository. Il fournit une interface marqueur générique Repository<T, ID>. Le type T correspond au type de l'objet géré par le repository. Le type ID correspond au type de l'objet qui représente la clé d'un objet.
La gestion efficace des propriétés rend notre application configurable. Spring Boot Actuator permet de monitorer et gérer une application pendant son exécution. Le déploiement de l'application est facilité par la génération d'un JAR, et pour les projets web, un tomcat est embarqué.
Spring est un framework léger open source largement utilisé pour développer des applications d'entreprise. Spring Boot est construit sur le framework Spring conventionnel, largement utilisé pour développer des API REST.
Vous pouvez générer un projet Spring Boot facilement et rapidement à l'aide d'un formulaire via une interface web ergonomique sur http://start.spring.io. Vous pouvez également vous rendre sur Eclipse STS, faire un « New », « Spring Starter Project ».
C'est une déclinaison du framework classique de Spring qui permet essentiellement de réaliser des microservices (ce sont la majeure partie du temps des services web qui sont regroupés en APIUne API est un programme permettant à deux applications distinctes de communiquer entre elles et d'échanger des données.).
Vous pouvez utiliser les méthodes disponibles dans la classe Rest Template pour utiliser les services Web pour toutes les méthodes HTTP.
Un Endpoint est ce qu'on appelle une extrémité d'un canal de communication. Autrement dit, lorsqu'une API interagit avec un autre système, les points de contact de cette communication sont considérés comme des Endpoints. Ainsi, pour les API, un Endpoint peut inclure une URL d'un serveur ou d'un service.
Le protocole SOAP (Simple Object Access Protocol) est un protocole de messagerie. Il permet à des programmes qui s'exécutent sur des systèmes d'exploitation distincts (tels que Windows et Linux) de communiquer au moyen du protocole HTTP (HyperText Transfer Protocol) et de son langage, XML (Extensible Markup Language).
L'API permet la communication de vos produits et services avec d'autres produits sans mettre en œuvre de directives. Un exemple serait la façon dont Google et Facebook fonctionnent de manière transparente avec les applications pour smartphone et les sites Web pour se connecter rapidement.
Spring : introduction des modules importants
Core Container : il comprend les modules élémentaires spring-core, spring-beans, spring-context, spring-context-support et spring-expression.
Le projet Spring Boot est une extension du Spring Framework pour mettre en place rapidement des applications Java. Grâce à un système modulaire de dépendances et un principe de configuration automatique, il permet de disposer d'une structure de projet complète et immédiatement opérationnelle.
Un framework propose une bibliothèque de fonctionnalités dans laquelle vos développeurs vont pouvoir piocher en fonction de vos besoins. En développement, l'utilisation d'un framework permet donc de gagner du temps et aujourd'hui, il s'agit d'un standard dans la construction d'un projet web ou mobile.
Il est très largement utilisé dans le monde Java, ce qui en fait un standard de facto et constitue une certaine garantie sur la pérennité du framework. Spring propose une très bonne intégration avec des frameworks open source (Struts, Hibernate, ...) ou des standards de Java (Servlets, JMS, JDO, ...)
Partie 2 : installation Spring boot CLI
Ajoutez le chemin 'bin' à la variable d'environnement PATH utilisateur du système d'exploitation afin de pouvoir lancer ce script de n'importe où sur le disque dur. Lancez une Invite de commande (ms-dos) et tapez 'spring'. Le résultat suivant apparaît.
Hibernate est une solution open source de type ORM (Object Relational Mapping) qui permet de faciliter le développement de la couche persistance d'une application. Hibernate permet donc de représenter une base de données en objets Java et vice versa.
Bien entendu JPA ne permet d'adresser qu'à des bases de données relationnelles (à l'instar de JDBC). En fait JPA est une spécification d'ORM (Object Relational Mapping) pour Java. Un ORM, comme son nom l'indique, permet de faire le lien entre le monde objet et le monde de la base de données relationnelle.
L'annotation @Configuration permet de déclarer pour Spring un composant qui ne sert qu'à configurer le contexte de l'application. Normalement ce composant n'est pas destiné à être injecté comme dépendance mais à déclarer des méthodes de fabrique annotées avec @Bean.
L'injection de dépendances (Dependency injection) est un mécanisme qui permet d'implémenter le principe de l'inversion de contrôle (souvent abrégé par l'acronyme IoC). Elle consiste à injecter dynamiquement les dépendances pour différentes classes en s'appuyant sur un ou plusieurs modules.