Qu'est-ce que Spring Framework? - Chemin vers un développement efficace

Ce blog sur ce qu'est Spring Framework parle du Java Framework largement utilisé - Spring. Il explique également pourquoi et comment utiliser Spring Framework avec des exemples.

Dans le monde trépidant d’aujourd’hui, nous avons besoin que tout soit rapide. Nous ne voulons pas rester trop longtemps engagés dans un travail, que ce soit quelque chose comme voyager, faire du shopping, étudier ou travailler. En matière de codage, nous souhaitons que nos applications soient développées dans les plus brefs délais tout en offrant une efficacité totale. Nous sommes peut-être pressés, mais nous ne pouvons quand même ni faire de compromis sur notre qualité ni vouloir y mettre trop d’efforts. Alors, quelle est la solution? Les cadres fonctionnent le mieux dans cette situation. Il existe différents frameworks disponibles sur le marché, parmi lesquels peu sont utilisés comme: Spring, Hibernate, Struts, etc. À travers ce blog, découvrons ce qu'est Spring Framework et pourquoi il est si populaire sur le marché!



Avant de commencer, jetons un coup d'œil aux sujets dont je vais parler dans ce blog:



Frameworks Java

Pourquoi devrions-nous opter pour des cadres?Soyonscomprenez-le avec notre ami, Coddy .

Coddy en problème - Qu



Coddy se voit confier une tâche pour développer une application, mais le temps imparti n'est pas suffisant pour la terminer. Il doit écrire lui-même beaucoup de lignes de code (LOC). C'est très long et fatiguant. Il ne sait pas ce qu'il doit faire! D'où il devrait commencer!

Coddy commence à penser à une solution à son problème. Il a besoin de quelque chose qui est rapide et efficace qui permet d'économiser du temps et des efforts, comme quelque chose de prêt à l'emploi.



Soudain, l'idée d'utiliser Frameworks le frappe. Les cadres sont rapides, efficaces et légers. Ce sont de grands corps de codes prédéfinis que nous pouvons facilement ajouter à notre propre code pour résoudre un problème spécifique.

Il code en utilisant le Framework. Étonnamment, le code s'intègre facilement au cadre.

Coddy maintenant, peut coder plus rapidement et terminer son application dans les délais impartis. De plus, il est libre d'écrire des milliers de lignes de code non fonctionnel.

Après avoir déployé l'application qui a été développée à l'aide du Framework, il a constaté qu'elle s'exécutait à une vitesse beaucoup plus élevée et que son débit augmentait également par rapport à d'autres applications développées sans utiliser le Framework.

Alors, commençons maintenant par les Java Frameworks.

Comment les frameworks Java sont-ils arrivés à l'existence?

À la fin des années 1990, les applications ont été largement développées en utilisant les normes JEE. Le principe de J2EE était multi-plateforme / multi-fournisseur, si vous pouvez coder selon les normes J2EE, vous pouvez déployer votre application sur n'importe quel serveur d'application J2EE, quelle que soit la plate-forme. L'exécution de votre code sur n'importe quel serveur d'application vous offre de nombreux avantages tels que - la gestion des transactions, la messagerie, le mailing, l'interface d'annuaire, etc. Mais comme rien n'est facile dans ce monde, travailler avec J2EE a également rencontré quelques difficultés.

  • TrèsComplexe : Enterprise Java Bean a été développé pour réduire la complexité des applications J2EE. Mais il n’a pas réussi à atteindre son objectif de mise en œuvre. La raison derrière cela est que, lors de l'écriture d'un composant, il est nécessaire d'écrire un ensemble de fichiers XML, d'interfaces d'accueil, d'interfaces distantes / locales, etc.
  • Problème de «recherche»: Chaque fois qu'un composant dépendait d'un autre composant, il devait rechercher les composants dont il dépendait par lui-même. Cette «recherche» de composant se produit uniquement par nom, le nom de la dépendance a donc été codé en dur dans le composant.
  • Poids lourd: As aToutes les fonctionnalités telles que le clustering, la communication à distance, etc. étaient prises en charge, vous devez les configurer, que vous en ayez besoin ou non. Cela rendra vos applications gonflées.

C'est ainsi que Java Frameworks est né. Les frameworks Java ne sont rien d'autre que de gros corps de code prédéfini que vous pouvez appliquer à votre propre code pour résoudre votre problème dans un domaine spécifique. Vous pouvez utiliser un framework en appelant ses méthodes, l'héritage, en fournissant des «callbacks», des écouteurs ou d'autres implémentations du Observateur modèle.

Comprenons-le à travers une représentation picturale:

Mais comment exactement réduisent-ils notre travail et rendent nos codes efficaces? Pour le comprendre, passez par ce qui suit avantagesetdésavantagesde ces cadres. Commençons par le avantages .

Efficacité:

Les tâches qui prennent généralement des heures et des centaines de lignes de code à composer peuvent désormais être effectuées en quelques minutes avec des fonctions prédéfinies. Le développement devient beaucoup plus facile, donc s'il est beaucoup plus facile, il est beaucoup plus rapide et par conséquent plus efficace.

Sécurité:

Un framework largement utilisé aura généralement de grandesSécuritéapplications. Le grand avantage est lequartierderrière ce cadre, où les utilisateurs finissent généralement par être des testeurs de longue durée. Si vous trouvez une vulnérabilité ou une faille de sécurité, vous pouvez aller sur le site Web du framework et leur faire savoir afin qu’elle puisse être corrigée.

Frais:

Les structures les plus populaires sont complémentaires et permettent donc au développeur de coder plus rapidement. Si le codage est effectué plus rapidement, les dépenses pour le client final seront certainement moins importantes dans tous les aspects, qu'il s'agisse de temps ou d'efforts. De plus, le coût de maintenance est également faible.

Soutien:

Comme tout autre outil distribué, un cadre comprend généralement des documents, un groupe de soutien ou des forums en ligne de grande communauté où vous pouvez obtenir des réponses rapides.

Malgré tous ces avantages, Java Frameworks a certains désavantages , comme:


Restrictions:

Le comportement fondamental du framework ne peut pas être modifié, ce qui indique que lorsque vous utilisez un framework, vous devez respecter ses limites et travailler comme il est requis. Ainsi, vous devez vous assurer de choisir un cadre qui correspond à vos besoins.

Le code est public:

Puisque le cadre est facilement accessible à tous, jeIl est également proposé aux personnes mal intentionnées. Il peut être étudié pour savoir comment les choses fonctionnent et pour découvrir des défauts qui peuvent être utilisés contre vous.

Douane Fonctionnalités:

Lorsque vous utilisez un framework, vous en savez très peu sur le langage qui le sous-tend car les fonctionnalités qu'il contient sont personnalisées.Lorsque vous utilisez des fonctionnalités personnalisées, il est très probable que vous deviez les utiliser conformément aux normes du framework qui peuvent différer du concept d'origine.

Maintenantcettevous connaissez les avantages et les inconvénientsdes cadres,choisissez votre cadre en fonction de vos besoins. Il existe différents types de cadres disponibles sur le marché. Le diagramme ci-dessous en montre quelques-uns:

Donc, dans ce blog, nous nous concentrerons sur Spring Framework.

Qu'est-ce que Spring Framework?

Ici se pose la question «Qu'est-ce que Spring Framework»?

Spring Framework est un puissant framework de développement d'applications léger utilisé pour Enterprise Java (JEE).

Les fonctionnalités de base de Spring Framework peuvent être utilisées dans le développement de toute application Java.Il peut être décrit commecadre complet et modulable. Spring Framework peut être utilisé pour toutes les implémentations de couche d'une application en temps réel. Il peut également être utilisé pour le développement d'une couche particulière d'une application en temps réel contrairement à Struts et Hibernate, mais avec Spring, nous pouvons développer toutes les couches.

Il s'agissait de ce qu'est Spring Framework, mais comment il a été développé? Eh bien, il y a une histoire intéressante derrière cela. Jetons un coup d'œil sur l'histoire et l'origine de Spring Framework.

En octobre 2002, Rod Johnson , un spécialiste australien de l'informatique, a écrit un livre intitulé Expert One-on-One J2EE Design and Development. Dans ce livre, il a proposé une solution plus simple basée sur les classes Java ordinaires (POJO) et l'injection de dépendances. Il a écrit plus de 30 000 lignes de code d'infrastructure qui comprenaient un certain nombre d'interfaces java réutilisables et de classes pour développer l'application. Vers février 2003, Rod, Juergen et Yann ont commencé à collaborer sur le projet Spring. Le nom «Spring» a été donné car il signifiait un nouveau départ après «Winter» du traditionnel J2EE.

Voici la chronologie des principales versions de l'histoire du printemps:

Il a été nommé Interface 21, en référence au 21e siècle et publié sous licence Apache 2.0.
C'était la première version de jalon. Le framework Spring a rapidement évolué depuis cette version. Interface21 a pris en charge AspectJ en parallèle avec Spring Framework.
De nouvelles fonctionnalités ont été ajoutées - configurations XML extensibles, prise en charge de Java 5 et des langages dynamiques, points d'extension IoC et améliorations AOP.
De nouvelles fonctionnalités ont été ajoutées - prise en charge de Java 6 / JEE5, configurations d'annotations, détection automatique des composants dans le chemin de classe et bundles compatibles OSGi.
De nouvelles fonctionnalités ont été ajoutées - prise en charge du système de modules réorganisé, SpEL, JavaConfig, bases de données intégrées, prise en charge REST et prise en charge de Java EE 6.
Le projet Spring Data Commons a été publié. Plus tard en 2012, Rod Johnson a quitté l'équipe du printemps.
Tous les projets Spring sont passés à Pivotal. De nouvelles fonctionnalités ont été ajoutées - prise en charge complète de Java 8, websockets, dépendances de bibliothèques tierces supérieures, DSL groovy pour les définitions de bean.
Il était compatible avec Java 6, 7 et 8, avec un accent sur les améliorations de base et les capacités Web modernes.
Ce sera la dernière générationdans la configuration système requise générale pour Spring 4. 4.3.8 est la version actuelle.

Pourquoi Spring Framework?

Vous trouverez ci-dessous un graphique qui montre la comparaison entre Spring et divers autres cadres.

Ci-dessous un graphique basé sur une enquête,à partir de mai 2016. Comme vous pouvez le voir sur le graphique, Spring Framework est très populaire dans son domaine et a continué à maintenir sa position sur tdepuis 2014.

Raisons du cadre à ressortla popularité des œuvres

Il y a généralement trois raisons principales à la popularité de Spring Framework.

  1. Simplicité
  2. Testabilité
  3. Couplage lâche

Discutons de ces sujets en détail.

Simplicité: Spring Framework est simple car non invasif car il utilise des modèles POJO et POJI.

  • POJO (objets Java simples): ALa classe Java non couplée à une technologie ou à un framework est appelée ' POJO ' .
  • POJI (Plain Old Java Interfaces): Une interface Java non couplée à une technologie ou à un cadre de travail est appelée ' POJI ' .

Testabilité : Pour écrire le Sbambouapplication, le serveur n'est pas obligatoire. Mais pour les struts et les applications EJB, vous avez besoin d'un serveur, si vous souhaitez tester l'application. Il peut avoir besoin de beaucoup de changements dans la source et pour afficher ces changements, chaque fois que vous devez redémarrer le serveur. Cela devient fastidieux et prend du temps. En cas deSpring Framework, il a son propre conteneur pour exécuter l'applicationcations.

Couplage lâche : Spring Framework est faiblement couplé car il a des concepts tels que l'injection de dépendances, AOP, etc. Permet de comprendre cela avec un exemple.

Ici, j'ai une interface Bike qui a une méthode start (). Il est en outre mis en œuvre par trois classes, à savoir: Yamaha, Honda et Bajaj.

interface publique Bike {public void start ()}

Ici, une classe Rider crée un objet de n'importe quelle classe qui implémente l'interface Bike.

class Rider {Bike b public void setBike (Bike b) {this.b = b} void ride () {b.start ()}}

Désormais, le conteneur Spring Framework peut injecter un objet de n'importe quelle classe qui implémente l'interface Bike, selon les besoins. C'est ainsi que fonctionne le couplage lâche.

Architecture du framework Spring

Comme vous pouvez le voir sur le diagramme ci-dessus, Spring a une architecture en couches composée de différents modules qui ont leurs propres fonctionnalités. Ces modules sont généralisés dans les couches suivantes:

  • Conteneur principal
  • Accès aux données / intégration
  • la toile
  • AOP (programmation orientée aspect)
  • Instrumentation
  • Tester.

Vous vous demandez peut-être quel est l’avantage de Spring Framework d’avoir une architecture en couches? Découvrons les points suivants:

  • Spring Framework organise efficacement vos objets de niveau intermédiaire.
  • Quel que soit l'environnement d'exécution, les services de gestion de la configuration de Spring Framework peuvent être utilisés dans n'importe quelle couche architecturale.
  • Spring Framework gère la configuration de manière cohérente dans toute l'application. Cela élimine le besoin d'utiliser une variété de formats de fichiers de propriétés personnalisées.
  • Spring Framework est conçu de manière à ce que les applications créées avec lui dépendent le moins possible de ses API.
  • En raison de l'utilisation d'interfaces,Spring Framework facilite les bonnes pratiques de programmation.

Pour bien comprendre ce qu'est Spring Framework, voyons une application Spring Framework simple. Suivez les cinq étapes simples:

Étape I: Création de la classe Bean

package org.edureka.firstSpring public class StudentBean {String name public String getName () {return name} public void setName (String name) {this.name = name} public void displayInfo () {System.out.println ('Hello: '+ nom)}}

Étape II: créer un fichier XML

 

Étape III: créer la classe principale

package org.edureka.firstSpring import org.springframework.context.ApplicationContext import org.springframework.context.support.ClassPathXmlApplicationContext classe publique StudentDemo {public static void main (String [] args) {ApplicationContext appCon = new ClassPathXml.ApplicationContext (StudentContext) ) StudentBean factory = (StudentBean) appCon.getBean ('studentbean') factory.displayInfo ()}}

Étape IV: chargez les fichiers jar

Chargez les fichiers jar suivants.

  • commons-logging-1.2.jar
  • javax.servlet-api-3.1.0.jar
  • jstl-1.2.jar
  • spring-aop-4.2.2.RELEASE.jar
  • spring-beans-4.2.2.RELEASE.jar
  • spring-context-4.2.2.RELEASE.jar
  • spring-core-4.2.2.RELEASE.jar
  • expression-ressort-4.2.2.RELEASE.jar
  • spring-web-4.2.2.RELEASE.jar
  • spring-webmvc-4.2.2.RELEASE.jar

REMARQUE: Si vous avez besoin des fichiers jar, commentez ci-dessous.

Étape V: exécutez le programme

Exécutez le programme sur votre serveur pour tester l'application.

J'espère avoir été en mesure d'expliquer clairement, qu'est-ce que Spring Framework, comment fonctionne-t-il exactement et à quoi il sert. Vous vous référez également à la vidéo sur «Qu'est-ce que Spring Framework», où l'instructeur décrit les sujets abordés dans ce blog avec une démonstration pratique.

que fait un développeur de tableaux

Qu'est-ce que Spring Framework en Java | Tutoriel Spring Framework | Edureka

Si vous souhaitez en savoir plus sur Spring Framework, restez à l'écoute de ma série de blogs car je vais créer un autre blog sur qui parlera de concepts plus avancés au printemps.

Si vous souhaitez apprendre Spring et que vous souhaitez l'utiliser lors du développement d'applications Java, consultez le par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires et nous vous recontacterons.