Ce este Spring Framework? - Calea către o dezvoltare eficientă



Acest blog despre ce este Spring Framework vorbește despre Java Framework utilizat pe scară largă - Spring. De asemenea, spune de ce și cum se utilizează Spring Framework cu exemple.

În lumea de ritm rapid de astăzi, avem nevoie ca totul să fie rapid. Nu vrem să ne păstrăm prea mult timp într-o singură lucrare, să fie vorba despre călătorii, cumpărături, studii sau muncă. Când vine vorba de codificare, dorim ca aplicațiile noastre să fie dezvoltate în cea mai scurtă perioadă de timp, dar oferind o eficiență deplină. S-ar putea să ne grăbim, dar totuși, nu putem nici să facem compromisuri cu calitatea noastră, nici să vrem să depunem eforturi prea mari. Deci, care este soluția? Cadrele funcționează cel mai bine în această situație. Există diverse cadre disponibile pe piață, printre care câteva sunt utilizate, cum ar fi: Spring, Hibernate, Struts etc. Prin intermediul acestui blog, să aflăm ce este Spring Framework și de ce este atât de popular pe piață!

Înainte de a începe, să aruncăm o privire asupra subiectelor pe care le voi discuta în acest blog:





Cadrele Java

De ce ar trebui să optăm pentru Frameworks?Haidețiintelege-l cu prietenul nostru, Coddy .

suprascrie vs suprasarcină c ++

Coddy în problemă - Ce este Spring Framework - Edureka!



Coddy i se dă sarcina de a dezvolta o aplicație, dar timpul alocat nu este suficient pentru a o termina. El trebuie să scrie singur o mulțime de linii de cod (LOC). Este foarte obositor și consumator de timp. Este confuz ce ar trebui să facă! De unde ar trebui să înceapă!

Coddy începe să se gândească la o soluție la problema lui. El are nevoie de ceva rapid și eficient care să economisească timp și efort, cum ar fi ceva gata de pregătire.



Dintr-o dată, ideea de a folosi Frameworks îl lovește. Cadrele sunt rapide, eficiente și ușoare. Acestea sunt corpuri mari de coduri predefinite pe care le putem adăuga cu ușurință la propriul cod pentru a rezolva o problemă specifică.

El codifică folosind cadrul. În mod surprinzător, codul se potrivește ușor cu cadrul.

Coddy acum, poate codifica mai rapid și își poate completa cererea în intervalul de timp dat. Mai mult, el este liber să scrie mii de rânduri de cod nefuncțional.

După ce a implementat aplicația care a fost dezvoltată folosind Framework-ul, a constatat că a fost executată cu o viteză mult mai mare, iar randamentul său a crescut și în comparație cu alte aplicații care au fost dezvoltate fără a utiliza Framework-ul.

Deci, să începem acum cu cadrul Java.

Cum au intrat în existență cadrele Java?

La sfârșitul anilor 1990, aplicațiile au fost dezvoltate pe scară largă folosind standardele JEE. Premisa J2EE a fost multi-platformă / multi-furnizor, dacă puteți codifica în conformitate cu standardele J2EE vă puteți implementa aplicația pe orice server de aplicații J2EE, indiferent de platformă. Rularea codului dvs. pe orice server de aplicații vă oferă multe avantaje, cum ar fi - gestionarea tranzacțiilor, mesagerie, corespondență, interfață de director etc. Dar, deoarece nimic nu este ușor în această lume, lucrul cu J2EE a avut și unele dificultăți.

  • FoarteComplex : Enterprise Java Bean a fost dezvoltat pentru a reduce complexitatea aplicațiilor J2EE. Dar nu a reușit să își atingă scopul în implementare. Motivul din spate este că, în timp ce scrieți o componentă, este necesar să scrieți un set de fișiere XML, interfețe de acasă, interfețe la distanță / locale etc.
  • Problema „căutării”: Ori de câte ori o componentă depindea de o altă componentă, trebuia să caute componentele de care depindea singură. Această „căutare” a componentei se întâmplă numai după nume, astfel încât numele dependenței a fost codificat în componentă.
  • Greutate mare: CaVor fi acceptate funcții cum ar fi clustering, remoting etc., trebuie să le configurați, indiferent de faptul că aveți nevoie sau nu de ele. Acest lucru va face ca aplicațiile dvs. să fie umflate.

Așa a apărut Java Frameworks. Cadrele Java nu sunt altceva decât corpuri mari de coduri predefinite pe care le puteți aplica propriului cod pentru a vă rezolva problema într-un anumit domeniu. Puteți utiliza un cadru apelând metodele acestuia, moștenirea, oferind „callbacks”, ascultători sau alte implementări ale Observator model.

Să o înțelegem printr-o reprezentare picturală:

Dar cum anume ne reduc munca și ne eficientizează codurile? Pentru a o înțelege, parcurgeți următoarele avantajeșidezavantajea acestor cadre. Să începem cu avantaje .

Eficienţă:

Sarcinile care, în general, necesită ore și sute de linii de cod pentru a compune, pot fi acum realizate în câteva minute cu funcții pre-construite. Dezvoltarea devine mult mai ușoară, deci, dacă este mult mai ușoară, este mult mai rapidă și ulterior mai eficientă.

Securitate:

Un cadru utilizat pe scară largă va avea în general dimensiuni mariSecuritateaplicații. Marele beneficiu esteCartierîn spatele acestui cadru, în care utilizatorii ajung de obicei să fie testeri de lungă durată. Dacă găsiți o vulnerabilitate sau o gaură de securitate, puteți accesa site-ul web al cadrului și le puteți informa pentru a putea fi remediate.

Cheltuieli:

Cele mai populare structuri sunt gratuite și astfel ajută dezvoltatorul să codeze mai repede. Dacă codificarea se face mai repede, cheltuiala pentru clientul final va fi cu siguranță mai mică din toate punctele de vedere, fie că este vorba de timp sau efort. În plus, costul de întreținere este, de asemenea, scăzut.

A sustine:

Ca orice alt instrument distribuit, un cadru include în general documente, un grup de asistență sau forumuri online de comunitate mare, unde puteți obține răspunsuri rapide.

În ciuda faptului că are toate aceste avantaje, Java Frameworks are unele dezavantaje , ca:


Restricții:

Comportamentul fundamental al cadrului nu poate fi modificat, ceea ce indică faptul că atunci când utilizați un cadru, vi se cere să îi respectați limitările și să lucrați așa cum este necesar. Astfel, trebuie să vă asigurați că alegeți un cadru care să se potrivească nevoilor dvs.

Codul este public:

Deoarece cadrul este ușor disponibil pentru toată lumea, iT este oferit și persoanelor cu intenții rele. Poate fi studiat pentru a ști cum funcționează lucrurile și pentru a descoperi defecte care pot fi utilizate împotriva ta.

Personalizat Caracteristici:

Când utilizați un cadru, știți foarte puțin despre limba din spatele acestuia, deoarece caracteristicile din acesta sunt construite personalizat.Când utilizați caracteristici personalizate, este foarte probabil să le utilizați în conformitate cu standardele cadrului, care pot diferi de conceptul original.

Acumaceacunoașteți avantajele și dezavantajelea cadrelor,alege-ți cadrul în funcție de nevoile tale. Există diferite tipuri de cadre disponibile pe piață. Diagrama de mai jos prezintă câteva dintre ele:

Deci, în acest blog ne vom concentra pe Spring Framework.

Ce este Spring Framework?

Aici apare întrebarea „Ce este cadrul de primăvară”?

Spring Framework este un puternic cadru ușor de dezvoltare a aplicațiilor utilizat pentru Enterprise Java (JEE).

Caracteristicile de bază ale Spring Framework pot fi utilizate în dezvoltarea oricărei aplicații Java.Poate fi descris cacadru complet și modular. Spring Framework poate fi utilizat pentru toate implementările de nivel ale unei aplicații în timp real. Poate fi, de asemenea, utilizat pentru dezvoltarea unui anumit strat al unei aplicații în timp real, spre deosebire de Struts și Hibernate, dar cu Spring putem dezvolta toate straturile.

Acesta a fost despre ce este Spring Framework, dar cum a fost dezvoltat? Ei bine, există o istorie interesantă în spatele ei. Să aruncăm o privire asupra istoriei și originii Spring Framework.

În octombrie 2002, Rod Johnson , specialist australian în calculatoare, a scris o carte intitulată Expert One-on-One J2EE Design and Development. În această carte a propus o soluție mai simplă bazată pe clasele Java obișnuite (POJO) și injecția de dependență. El a scris peste 30.000 de linii de cod de infrastructură care includea o serie de interfețe java reutilizabile și clase pentru dezvoltarea aplicației. În jurul lunii februarie 2003, Rod, Juergen și Yann au început să colaboreze la proiectul de primăvară. Numele „Primăvară” a fost dat, deoarece însemna un nou început după „Iarna” tradiționalului J2EE.

exemplu de bloc static în java

Urmează cronologia prezentată despre lansările majore din istoria primăverii:

A fost numit Interfață 21, ca referință la secolul 21 și lansat sub licența Apache 2.0.
Aceasta a fost prima lansare importantă. Cadrul de primăvară a evoluat rapid de la această lansare. Interface21 a acceptat AspectJ în paralel cu Spring Framework.
Au fost adăugate noi caracteristici - configurări XML extensibile, suport pentru limbaje Java 5 și dinamice, puncte de extensie IoC și îmbunătățiri AOP.
Au fost adăugate noi caracteristici - suport pentru Java 6 / JEE5, configurații de adnotare, detectarea automată a componentelor în clasă și pachete conforme OSGi.
Au fost adăugate noi caracteristici - suport pentru sistemul de module reorganizat, SpEL, JavaConfig, baze de date încorporate, suport REST și suport pentru Java EE 6.
Spring Data Commons Project a fost lansat. Mai târziu, în 2012, Rod Johnson a părăsit echipa de primăvară.
Toate proiectele de primăvară s-au mutat pe Pivotal. Au fost adăugate noi caracteristici - suport complet pentru Java 8, websockets, dependențe mai mari de bibliotecă terță parte, DSL groovy pentru definiții bean.
A fost compatibil cu Java 6, 7 și 8, cu accent pe rafinamentele de bază și capabilitățile web moderne.
Va fi generația finalăîn cadrul cerințelor generale de sistem Spring 4. 4.3.8 este versiunea curentă.

De ce Spring Framework?

Mai jos este prezentată o diagramă care arată comparația dintre Spring și diferite alte cadre.

Mai jos este un grafic bazat pe un sondaj,din mai 2016. După cum puteți vedea din grafic, Spring Framework este foarte popular în domeniul său și a continuat să-și păstreze poziția pe tpornit din 2014.

Motivele cadrului de primăvarăpopularitatea operelor

În general, există trei motive principale pentru popularitatea Spring Framework.

  1. Simplitate
  2. Testabilitate
  3. Cuplaj slab

Să discutăm aceste subiecte în detalii.

Simplitate: Spring Framework este simplu, deoarece este neinvaziv, deoarece folosește modele POJO și POJI.

  • POJO (obiecte Java vechi simple): AClasa Java care nu este asociată cu nicio tehnologie sau cu orice cadru este numită ' POJO ' .
  • POJI (Plain Old Java Interfaces): se numește o interfață Java care nu este cuplată cu nicio tehnologie sau cu orice alt cadru ' POJI ' .

Testabilitate : Pentru scrierea Sbambusaplicație, serverul nu este obligatoriu. Dar pentru struts și aplicații EJB, aveți nevoie de un server, dacă doriți să testați aplicația. Este posibil să aibă nevoie de multe modificări în sursă și pentru a vizualiza aceste modificări, de fiecare dată când trebuie să reporniți serverul. Acest lucru devine plictisitor și consumă mult timp. In caz deSpring Framework, are propriul container pentru a rula aplicațiacationii.

Cuplaj slab : Spring Framework este cuplat slab, deoarece are concepte precum injecția dependenței, AOP etc. Aceste caracteristici ajută la reducerea dependenței și la creșterea modularității în cadrul codului. Să înțelegem acest lucru cu un exemplu.

Aici am o interfață Bike care are o metodă start (). Este implementat în continuare de trei clase, și anume: Yamaha, Honda și Bajaj.

interfață publică Bike {public void start ()}

Aici un Rider de clasă creează un obiect din orice clasă care implementează interfața Bike.

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

Acum, containerul Spring Framework poate injecta un obiect din orice clasă care implementează interfața Bike, în funcție de cerință. Așa funcționează cuplajul liber.

Spring Framework Architecture

După cum puteți vedea din diagrama de mai sus, Spring are o arhitectură stratificată constând din diferite module care au propria lor funcționalitate. Aceste module sunt generalizate în următoarele straturi:

  • Container de bază
  • Acces la date / integrare
  • Web
  • AOP (Aspect Oriented Programming)
  • Instrumentaţie
  • Test.

S-ar putea să vă întrebați, care este avantajul Spring Framework de a avea arhitectură stratificată? Să aflăm următoarele puncte:

  • Spring Framework organizează în mod eficient obiectele dvs. de nivel mediu.
  • Indiferent de mediul de execuție, serviciile de gestionare a configurației Spring Framework pot fi utilizate în orice strat arhitectural.
  • Spring Framework gestionează configurația într-un mod consecvent în întreaga aplicație. Acest lucru elimină necesitatea de a utiliza o varietate de formate de fișiere personalizate.
  • Spring Framework este conceput în așa fel încât aplicațiile construite cu acesta să depindă de cât mai puține API-uri.
  • Datorită utilizării interfețelor,Spring Framework facilitează bune practici de programare.

Pentru a înțelege complet ce este Spring Framework, să vedem o aplicație simplă Spring Framework. Urmați cei cinci pași simpli:

Pasul I: Crearea clasei Bean

pachet 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: '+ nume)}}

Pasul II: Creați un fișier XML

 

Pasul III: Creați clasa principală

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

Pasul IV: Încărcați fișierele jar

Încărcați următoarele fișiere jar.

tipuri de date în MySQL cu exemple
  • 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
  • spring-expression-4.2.2.RELEASE.jar
  • spring-web-4.2.2.RELEASE.jar
  • spring-webmvc-4.2.2.RELEASE.jar

NOTĂ: În cazul în care aveți nevoie de fișierele jar, comentați mai jos.

Pasul V: Rulați programul

Rulați programul pe serverul dvs. pentru a testa aplicația.

Sper că am putut explica clar, ce este Spring Framework, cum funcționează exact și la ce se folosește. De asemenea, vă referiți la videoclipul despre „Ce este cadrul de primăvară”, unde instructorul descrie subiectele discutate în acest blog împreună cu demonstrația practică.

Ce este Spring Framework în Java | Tutorial cadru de primăvară | Edureka

Dacă sunteți interesat să aflați mai multe despre cadrul de primăvară, rămâneți la curent cu această serie a mea de bloguri, pentru că voi veni cu un alt blog pe care va vorbi despre concepte mai avansate în primăvară.

Dacă doriți să învățați Spring și doriți să-l utilizați în timp ce dezvoltați aplicații Java, verificați de Edureka, o companie de învățare online de încredere, cu o rețea de peste 250.000 de elevi mulțumiți răspândiți pe tot globul.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii și vă vom răspunde.