Comment créer un projet Spring Boot dans Eclipse
Publié: 2021-05-27On dit souvent que le langage de programmation Java est trop compliqué et lourd en termes de création d'applications simples. Cependant, Java fournit une plate-forme stable qui offre un écosystème extrêmement mature qui permet aux développeurs de créer des logiciels robustes sans trop de tracas.
Spring Framework – l'un des nombreux frameworks puissants présents dans l'écosystème Java – apporte avec lui une collection de modèles de configuration et de programmation pour simplifier le développement et les tests d'applications en Java.
Dans cet article, nous allons passer en revue certaines des fonctionnalités utiles de l'IDE STS (Eclipse Spring Tool Suite), qui vous seront utiles lors du développement de projets ou d'applications Spring Boot dans Eclipse. Nous parlerons des différents avantages de STS par rapport à la manière traditionnelle de créer des applications Spring avec Eclipse.
Ensuite, nous verrons comment démarrer une application, comment l'exécuter et, éventuellement, comment ajouter des dépendances supplémentaires. Enfin, nous terminerons ce tutoriel en ajoutant des arguments d'applications.
Table des matières
Principales caractéristiques de STS
Spring Tool Suite, abréviation de STS, est un environnement de développement basé sur Eclipse qui est spécifiquement personnalisé pour créer des projets et des applications Spring Boot transparents.
STS fournit un environnement prêt à l'emploi pour les développeurs pour la mise en œuvre, le débogage, l'exécution et le déploiement de leurs applications Spring. STS inclut également l'intégration pour Pivotal tc Server, Pivotal Cloud Foundry, Git, Maven et AspectJ.
Spring Tool Suite est une suite conçue comme une couche supplémentaire au-dessus des dernières versions d'Eclipse.
Paramétrage du projet
STS comprend toutes les structures de projet Java de base. L'outil analyse les fichiers de configuration et affiche des informations détaillées sur les beans définis, les dépendances injectées, les espaces de noms utilisés et extrait des aperçus pour certains stéréotypes.
Présentation des fonctionnalités STS
Eclipse STS fournit des correctifs rapides pour vos applications Spring tout en validant votre projet. Par exemple, lorsque vous travaillez avec Spring Data JPA, l'IDE Eclipse peut être utilisé pour valider les noms des méthodes de requête.
Spring Tool Suite fournit également une vue graphique facile à comprendre des différentes méthodes de bean et des relations qu'elles entretiennent. Si vous souhaitez examiner de plus près les différents éditeurs graphiques fournis avec STS, vous pouvez vérifier les vues disponibles sous la fenêtre des menus, afficher la vue, puis Spring respectivement.
Le STS offre également aux développeurs des fonctionnalités supplémentaires qui ne se limitent pas aux applications de Spring. Vous pouvez consulter la liste complète des fonctionnalités ici .
Création d'une application de printemps
Commençons par démarrer une application simple. Sans STS, l'application Spring peut être créée à l'aide du site Web Spring Initializer ou de la CLI Spring Boot. Cela peut être encore simplifié en cliquant sur Créer un projet Spring Starter à partir du tableau de bord STS.
Dans l'écran "Nouveau projet de démarrage de printemps", utilisez les paramètres par défaut ou effectuez les ajustements requis en fonction de votre projet, puis passez à l'écran suivant. Là, sélectionnez "Web" et cliquez sur Terminer.
Votre pom.xml devrait maintenant ressembler à ceci :
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.0</version>
<relativePath/> <!– rechercher le parent à partir du référentiel –>
</parent>
<propriétés>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</propriétés>
<dépendances>
<dépendance>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dépendance>
<dépendance>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dépendance>
</dépendances>
Si vous utilisez une ancienne version de Spring Boot, veuillez trouver la dernière version ici .
Exécution de l'application
L'application mentionnée précédemment peut être démarrée en cliquant simplement avec le bouton droit sur le projet et en sélectionnant "Exécuter en tant qu'application Spring Boot". Sans STS, vous pouvez exécuter l'application à partir de la CLI à l'aide des commandes suivantes :
$ mvn spring-boot:exécuter
Par défaut, les applications Spring sont démarrées avec Tomcat qui s'exécute sur le port 8080. À ce stade, les applications démarrent sur le port 8080 mais n'effectuent aucune tâche car nous n'y avons pas encore implémenté de code.
Journalisation et console ANSI
Lorsque vous exécutez le projet à partir de votre IDE à l'aide de la commande 'run', vous constaterez que la console génère des instructions de journal codées par couleur. Si vous souhaitez désactiver ces instructions, vous pouvez accéder à "Exécuter les configurations" et désactiver la case à cocher indiquant "Activer la sortie de la console ANSI dans l'onglet Spring Boot".
Vous pouvez également désactiver les instructions de journalisation en définissant une valeur de propriétés dans le fichier applications.properties comme ceci :
spring.output.ansi.enabled=JAMAIS
Vérifications du nom de la requête JPA
Parfois, la mise en œuvre d'une couche d'accès aux données peut devenir une activité fastidieuse. Il peut être nécessaire d'écrire beaucoup de code passe-partout pour réaliser des requêtes extrêmement simples et effectuer la pagination. Spring Data JPA vise à faciliter de manière transparente une telle implémentation de couches d'accès aux données.
Pour commencer, ajoutez la dépendance suivante pour JPA au fichier pom.xml généré précédemment :
<dépendance>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dépendance>
<dépendance>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dépendance>
Vous avez peut-être remarqué que votre version n'a pas été spécifiée dans la déclaration ci-dessus. Cela est dû au fait que les dépendances sont gérées par le spring-boot-starter-parent.
Pour que le JPA fonctionne, vous devrez définir correctement les gestionnaires d'entités et de transactions pour votre projet. Cependant, travailler avec Spring configure automatiquement ces valeurs pour vous. La seule chose qui reste à faire de votre côté est de créer les classes d'entités réelles.
Ces entités sont gérées par le gestionnaire d'entités créé par le conteneur. Créons une classe d'entité appelée Foo :
@Entité
la classe publique Foo implémente Serializable {
@Identifiant
@GeneratedValue
ID entier privé ;
nom de chaîne privé ;
// Getters et setters standards
}
Le conteneur analysera toutes les classes annotées avec @Entity à partir de la racine du package de configuration.
Ensuite, créons un référentiel JPA pour l'entité Foo :
interface publique FooRepository étend JpaRepository<Foo, Integer> {
public Foo findByNames (nom de la chaîne);
}
À ce stade, vous avez peut-être déjà remarqué que votre IDE signale désormais cette méthode de requête avec l'exception suivante :
Requête dérivée non valide ! Aucun nom de propriété trouvé pour le type Foo !
Cela est dû au fait que vous avez accidentellement écrit un "s" supplémentaire à la fin du nom de la méthode du référentiel JPA. Pour corriger cette exception, supprimez les s supplémentaires et faites comme suit :
public Foo findByName (nom de la chaîne);
Recherche de type de pot
Jar Type Search est une fonctionnalité qui a été introduite dans la version 3.5.0 de STS. Cette fonctionnalité fournit des propositions assistées par le contenu pour les classes qui ne sont pas encore dans le classpath. STS aide les développeurs à ajouter des dépendances à leurs fichiers POM, au cas où ils ne seraient pas sur le chemin de classe.
Par exemple, ajoutons une ligne à la classe d'entité Foo. Pour que cela fonctionne correctement, assurez-vous que l'instruction d'importation pour java.util.List est déjà présente.
Maintenant, nous pouvons ajouter Google Guava comme suit :
private List<String> strings = Lists // ctrl + SPACE pour obtenir la complétion du code
L'IDE propose alors plusieurs dépendances à ajouter au classpath. Ajoutez ces dépendances depuis com.google.common.collect, appuyez sur Entrée et ajoutez la dépendance depuis Guava.
Le pot de goyave sera automatiquement ajouté à votre fichier pom.xml comme suit :
<dépendance>
<groupId>com.google.guava</groupId>
<artifactId>goyave</artifactId>
<version>19.0</version>
</dépendance>
Ajout d'arguments d'application
L'une des fonctionnalités les plus puissantes du framework Spring est la prise en charge des configurations externes qui peuvent être transmises aux applications de plusieurs manières - en tant qu'argument de ligne de commande, spécifié dans les propriétés des fichiers YAML ou en tant que propriétés système. Voyons comment ajouter une option de configuration en tant qu'argument de démarrage d'application à l'aide de STS.
Ceci est illustré en configurant Tomcat pour qu'il démarre sur un port différent.
Pour exécuter une application Spring sur un port Tomcat autre que celui par défaut (8080), vous devez utiliser la commande ci-dessous. Dans la commande suivante, un port personnalisé est spécifié comme argument de ligne de commande.
mvn spring-boot:run -Drun.arguments=”–server.port=7070″
Apprenez des cours de développement de logiciels en ligne dans les meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.
Conclusion
Dans cet article, nous avons expliqué comment exécuter des projets et des applications Spring dans STS. Cependant, ce n'est pas tout - il existe de nombreuses autres fonctionnalités utiles qui peuvent être utilisées pendant le processus de développement. Bien que ce didacticiel ait été utile pour vous aider à créer Spring Boot Project dans Eclipse STS, n'oubliez pas qu'il vous reste beaucoup à explorer et à expérimenter.
Si vous souhaitez en savoir plus sur Java, le développement de logiciels à pile complète, consultez le programme Executive PG de upGrad & IIIT-B en développement de logiciels à pile complète, conçu pour les professionnels en activité et offrant plus de 500 heures de formation rigoureuse, 9+ projets et affectations, statut d'ancien de l'IIIT-B, projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.
Qu'est-ce qu'une botte à ressort?
Qu'est-ce que l'hibernation printanière?
Spring Hibernate est un framework open source utilisé pour développer des applications Java d'entreprise. Le framework Spring gère les tâches les plus importantes de toute application Java. Il permet aux développeurs d'apporter des modifications au code sans aucun effet secondaire. Il permet la lisibilité du code et simplifie la gestion des erreurs de l'application. Il prend en charge l'accès aux données et le mappage des données. Le framework Hibernate est un framework de persistance java pour le langage de programmation orienté objet java. Il fournit les fonctionnalités de gestion des données relationnelles en Java. Hibernate prend en charge la couche d'abstraction de données Java (jdo), l'invocation de méthode distante Java (rmi) et l'interface transactionnelle Java.
Qu'est-ce que l'initialisation du printemps ?
Spring Initializr est un outil en ligne pratique pour démarrer avec Spring. Il génère des projets en fonction de vos besoins. Que vous recherchiez une simple application CRUD ou une application Web complète, ce petit site vous permettra de démarrer avec le codage en un rien de temps. Remplissez votre projet avec votre choix de technologie (Java, Groovy, Grails, etc.) et il générera la structure et les dépendances de base du projet. Vous pouvez ajouter d'autres dépendances ou personnaliser le projet selon vos besoins. Spring Initializr est un outil vraiment cool qui facilite le démarrage d'un nouveau projet Spring Boot. Il génère la structure du projet et les fichiers de configuration que vous pouvez ensuite personnaliser. Il vous donne également une sélection de technologies sur lesquelles le projet peut être basé, vous avez donc l'avantage du choix sans l'inconvénient d'avoir à faire le travail vous-même.