Java >> Tutoriel Java >  >> Tag >> Spring

5 raisons pour lesquelles vous devriez envisager de mettre à niveau vos applications vers Spring 4

Publié pour la première fois en 2004, Spring Framework fait partie des meilleurs frameworks Java. Spring 4 est sorti en décembre 2013 et il s'agit de la première version du framework à prendre en charge Java 8. Découvrez pourquoi vous devriez envisager de mettre à niveau vos applications vers Spring 4.

Remarque :J'ai initialement écrit cet article sur le blog de mon entreprise à l'adresse http://blog.goyello.com. Vous pouvez trouver l'article original ici :http://blog.goyello.com/2015/11/30/5-reasons-to-upgrade-to-spring-4/.

#1 Développement plus rapide avec Java 8

Java 8, sorti en 2014, était la plus grande mise à jour depuis Java 1.5. Il ne fait aucun doute que vous devriez envisager de passer à Java 8 car :

  • Java 8 est plus rapide
  • Java 8 a des expressions Lambda
  • Java 8 dispose de l'API Streams
  • Java 8 dispose d'une nouvelle API de date et d'heure

Apprenez-en plus dans l'article suivant :https://dzone.com/articles/why-java-8-1 et rappelez-vous que Java 7 est désormais en fin de vie :https://www.java.com/en/download/faq /java_7.xml

Spring 4 était la première version du framework qui prend entièrement en charge Java 8 et si vous souhaitez utiliser Spring avec Java 8, vous devez absolument effectuer une mise à niveau.

Créer un code plus compact et plus propre est facile avec Spring 4 et Java 8. Par exemple, de nombreuses interfaces existantes et nouvelles de Spring sont des interfaces fonctionnelles qui peuvent être utilisées dans des expressions lambda. La nouvelle API de date et d'heure est prise en charge dans le cadre de base, mais vous pouvez également l'utiliser dans les vues Thymeleaf ou avec Spring Data JPA. Un autre exemple est le support de java.util.Optional dans le cadre. Par exemple, vous pouvez l'injecter en utilisant @RequestParam , @RequestHeader et @MatrixVariable . Spring fournit également des convertisseurs prêts à l'emploi pour Stream , Charset , Currency , et TimeZone .

#2 Amélioration de la productivité

Chaque version de printemps suivante est accompagnée d'un tas d'améliorations qui simplifient le développement. De plus en plus de tâches nécessitant des solutions personnalisées font désormais partie du cadre. Par exemple, dans Spring, l'injection de types génériques Java est enfin possible. Spring considérera automatiquement les génériques comme une forme de @Qualifier . Introduction de @EventListener et les événements génériques simplifient la gestion des événements dans les applications Spring. Spring a non seulement introduit la prise en charge de JCache (JSR-107), mais a également amélioré sa propre abstraction de mise en cache au fil du temps. S'il vous arrive de travailler avec JMS, vous pouvez également vous attendre à des améliorations, principalement en ce qui concerne la configuration (@EnableJms ) et enregistrement des terminaux (@JmsListener ).

Il existe de nombreux changements dans l'infrastructure de test qui permettent de créer des tests d'intégration beaucoup plus rapidement. Nouveau TestTransaction L'API pour gérer les transactions par programmation, l'exécution de scripts SQL par classe ou par méthode, l'exécution de tests avec des règles JUnit au lieu de l'exécuteur de tests JUnit ne sont que quelques exemples des changements.

#3 À jour

Le framework Spring coexiste et s'intègre à de nombreux frameworks et bibliothèques tierces. Les dépendances sont mises à jour afin que vous puissiez travailler avec les plus récentes. Spring s'intègre bien avec les API JEE comme JMS 2.1, JPA 2.1, Bean Validation 1.1 ou JCache déjà mentionné. Spring a également apporté la prise en charge de la liaison et de la conversion des types de javax.money package, à partir de l'API Money and Currency. Il s'intègre également à Gson - une alternative à Jackson - et au protocole de données Google Protocol Buffers.

Il convient également de mentionner que Spring prend en charge des normes telles que WebSockets, SockJS et HTTP Streaming et Server-Sent Events, qui sont pris en charge par le framework.

#4 Fini l'enfer JAR

L'introduction du projet Spring IO Platform a un impact significatif sur la façon dont les dépendances sont gérées dans les applications Spring qui utilisent Maven ou Gradle.

La plate-forme Spring IO fournit des versions des différents projets Spring et de leurs dépendances. Avec la configuration ci-dessus ajoutée à votre script de construction, vous êtes prêt à déclarer vos dépendances sans avoir à vous soucier des numéros de version.

En raison de certains problèmes liés à la mise à niveau des versions de dépendance, les développeurs avaient peur de le faire. Avec la plate-forme, la peur a disparu. Dans de nombreux cas, la mise à niveau de toutes les versions de dépendance prises en charge par la plate-forme peut nécessiter un changement de version de la plate-forme uniquement.

#5 Développeurs heureux

Les développeurs aiment travailler avec les dernières technologies. La mise à niveau du framework vers ses dernières versions leur donne l'opportunité d'augmenter leur productivité, d'apprendre quelque chose de nouveau et d'améliorer leurs compétences. Cela peut également être un moyen de les garder motivés et de les empêcher de penser à se retirer du projet d'héritage.

Ressources

Spring 4 et Java 8

  • http://www.baeldung.com/java-8-spring-4-and-spring-boot-adoption
  • https://spring.io/blog/2015/06/02/spring-4-and-java-8-adoption
  • https://dzone.com/guides/the-java-ecosystem-2015-edition

Migration

  • https://spring.io/blog/2014/01/30/migrating-from-spring-framework-3-2-to-4-0-1
  • https://github.com/spring-projects/spring-framework/wiki/Migrating-from-earlier-versions-of-the-spring-framework

Plate-forme Spring IO

  • http://docs.spring.io/platform/docs/current/reference/htmlsingle/#platform-documentation

Balise Java