Spring Tutorial: Hvad er Spring Framework og hvordan installeres?

Hvad er Spring Framework?

Spring Framework er en open source-ramme til at bygge webapplikationer med Java som programmeringssprog. Den er kraftfuld og let, men alligevel nem at bruge, og den giver stรธtte til udvikling Java applikationer nemt. Spring er en letvรฆgtsramme, der kan opfattes som en ramme af rammer, fordi den ogsรฅ tilbyder stรธtte til forskellige rammer sรฅsom dvaletilstand, stivere, gobelin og JSF.

Spring Framework

Spring Framework

Funktioner af Spring Framework

Nu i denne forรฅrstutorial vil vi dรฆkke nogle af de mest fremtrรฆdende trรฆk ved Spring Framework:

  • Foruddefinerede skabeloner
  • Let at teste
  • Lรธs kobling
  • Letvรฆgt
  • Hurtig udvikling
  • Kraftig abstraktion
  • Tilbyder en rรฆkke ressourcer
  • Erklรฆrende stรธtte
  • Tilbyder omfattende vรฆrktรธjer

Kort historie om forรฅret

Nu i denne forรฅrsramme-tutorial vil vi dรฆkke nogle vigtige vartegn fra forรฅrets historie:

  • Spring framework blev skrevet af Rod Johnson og blev fรธrst udgivet i juni 2002.
  • Forรฅr last version udgivet i marts 2004
  • Spring 1.2.6 version udgivelse i 2006
  • Spring 2.0-versionsudgivelse i oktober 2006
  • Spring 2.5 version udgivelse i november 2007
  • Spring 3 version udgivelse i december 2009
  • Spring 3.1 version udgivelse i december 2011
  • Spring framework 4 version udgivelse i december 2013 med Java 8 support
  • Spring framework 4.2.0 version udgivet i juli 2015
  • Spring framework 4.2.1 version frigivet i september 2015
  • Spring Framework 4.3 version udgivet den 10. juni 2016
  • Spring framework 5.0 version udgivet i juni 2017

Spring Framework Architecture

Forรฅrsrammerne Architecture giver 20 moduler, som kan bruges baseret pรฅ et applikationskrav.

Spring Framework Architecture

Spring Framework Architecture

Core og Bรธnne give den grundlรฆggende del af rammen, herunder IoC og DI.

Kernebeholder

Core Container er yderligere opdelt af underkomponenter som Core, Beans, Context og Expression Language moduler.

Lad os se hver af disse modeller i detaljer:

Fjederkerne:

Core-modulet leverer hele den primรฆre komponent i fjederrammerne. Det inkluderer IoC (Inversion of Control) og Dependency Injection-funktioner.

Spring Bean:

Dette modul tilbyder BeanFactory, som er en sofistikeret implementering af fabriksmรธnsteret.

Forรฅrskontekst:

Kontekstmodulet bygger pรฅ den solide base, som Core- og Beans-modulerne giver, og det er et medie, som hjรฆlper dig med at fรฅ adgang til alle objekter, der er defineret og konfigureret.

Spring Expression Languages โ€‹โ€‹(SpEL):

Dette modul tilbyder udtrykssprog til รฆndring og forespรธrgsel pรฅ objektgraf under kรธrsel.

Dataadgang/Integration:

Dataadgangs- og integrationslaget bestรฅr af modulerne JDBC, ORM, JDBC, OXM, JMS og Transaktion.

  • ORM: ORM-modul tilbyder konsistens/portabilitet til kode uanset dataadgangsteknologier. Det vil vรฆre baseret pรฅ objektorienteret kortlรฆgningskoncept.
  • JDBC-modulet bestรฅr af et JDBC-abstraktionslag. Det hjรฆlper dig med at understrege behovet for at udfรธre JDBC-relateret kodning.
  • OXM: Object XML Mappers (OCM) hjรฆlper dig med at konvertere objekterne til XML-format og omvendt.
  • Java Messaging Service-modulet tilbyder funktioner som at producere og forbruge beskeder.
  • Transaktion: Dette modul tilbyder deklarativ og programmatisk styringsmetode til implementering af unikke grรฆnseflader og for alle typer POJO'er (Plain Old Java Objekt)

Forรฅrsweb:

Website: Dette modul bruger servlet-lyttere og en web-orienteret applikationskontekst. Det tilbyder ogsรฅ en funktion af web-orienteret integration og funktionalitet til multi-part fil upload.

Web-servlet: Dette modul gemmer MVC-baseret implementering for webapplikationer.

Web-socket: Modul tilbyder WebSocket-baseret og tovejskommunikation mellem klienten og serveren i webapps.

Web-portlet: Dette modul kaldes ogsรฅ Spring-MVC-Portlet-modul. Det tilbyder forรฅr-baserede portlets og kopierer al funktionaliteten af โ€‹โ€‹et web-servlet-modul.

AOP: AOP-sprog er et nyttigt vรฆrktรธj, som giver udviklere mulighed for at tilfรธje virksomhedsfunktionalitet til applikationen.

Instrumentering: Dette modul tilbyder klasse instrumentering og loader implementeringer. Det bruges til specifikke applikationsservere.

Test: Dette modul giver support til test af fjederkomponenter med TestNG or JUnit vรฆrktรธjer. Det tilbyder ensartet indlรฆsning af Spring ApplicationContexts og caching af disse kontekster.

Fjeder โ€“ MVC Framework

Nu i denne Spring Framework tutorial, vil vi lรฆre om Spring MVC framework:

Spring MVC-ramme

Spring MVC-ramme

Spring web MVC-rammevรฆrket tilbyder model-view-controller-arkitektur tilbyder komponenter, der hjรฆlper dig med at vรฆre fleksible og lรธst koblede webapplikationer.

MVC-mรธnsteret giver dig mulighed for at adskille forskellige aspekter af applikationen, mens du tilbyder lรธs kobling mellem disse elementer. Spring MVC hjรฆlper dig ogsรฅ med at bygge fleksible og lรธst koblede webapplikationer.

MVC-designet giver dig ogsรฅ mulighed for at adskille forretningslogik, prรฆsentationslogik og navigationslogik. Det tilbyder ogsรฅ en elegant lรธsning til at bruge MVC i Spring Framework ved hjรฆlp af DispatcherServlet.

Hvordan fungerer MVC i forรฅret?

Nu i forรฅrets selvstudie skal vi lรฆre hvordan MVC virker om forรฅret:

MVC arbejder i forรฅret

Sรฅdan fungerer MVC i forรฅret

  • DispatcherServlet modtager en anmodning.
  • Derefter kommunikerer DispatcherServlet med HandlerMapping. Det tilbagekalder ogsรฅ controller, der er knyttet til den specifikke anmodning.
  • Controlleren behandler denne anmodning ved at kalde servicemetoderne og et ModelAndView-objekt returneret af DispatcherServlet.
  • Visningsnavnet sendes til en ViewResolver for at sรธge i den faktiske View, der skal aktiveres.
  • Derefter sendes DispatcherServlet til View for at gengive resultatet.
  • Ved at bruge modeldataene gengiver visningen og sender resultatet tilbage til brugeren.

Aspekt-orienteret programmering

Aspekt-orienteret programmering gรธr det muligt for et programs globale egenskaber at bestemme, hvordan det kompileres til et eksekverbart program.

Nรธglenheden for modularitet er et aspekt i stedet for en klasse. Aspekt-orienteret programmering nedbryder programmets logik i forskellige dele kendt som bekymringer.

En tvรฆrgรฅende bekymring kan pรฅvirke hele applikationen og er centraliseret pรฅ รฉt sted i kode som transaktionssikkerhed, administration, logning, godkendelse osv.

Tvรฆrgรฅende bekymring

Tvรฆrgรฅende bekymring

Det kan ogsรฅ betragtes som et dynamisk dekoratรธrdesignmรธnster. Dette mรธnster tilbyder ogsรฅ en yderligere adfรฆrd, der skal tilfรธjes til en eksisterende klasse ved at pakke den originale klasse og duplikere dens grรฆnseflade og fjerne originalen.

Kerne AOP Concepts

Der er syv kernekoncepter i aspektorienteret programmering.

Kerne AOP Concepts

Kerne AOP Concepts

Lad os diskutere dem i detaljer:

  • Aspect: Et aspekt er en klasse, der tillader implementering af JEE-applikationen. Det drejer sig om, hvilke der gรฅr pรฅ tvรฆrs af flere klasser, sรฅsom transaktionsstyring, sikkerhed osv. Aspekter kan vรฆre en typisk klasse konfigureret ved hjรฆlp af Spring XML-konfiguration eller en almindelig klasse, der er kommenteret ved hjรฆlp af @Aspect-annotering.
  • Joinpoint: Det er et kandidatpunkt i programafviklingen, hvor et aspekt kan tilsluttes. Det kan vรฆre en metode, der kaldes som en undtagelse, der kastes, eller endda et felt, som er รฆndret.
  • Rรฅdgivning: Rรฅdgivning er de faktiske handlinger, der tages for et specifikt joinpoint. Denne metode udfรธres, nรฅr et specifikt joinpoint mรธder et matchende punkt i applikationen.
  • Pointcut: Det er et udtryk, der kan matches med joinpunkter for at kontrollere, om det rรฅd skal udfรธres eller ej.
  • Target Objekt: Baseret pรฅ mรฅlobjekt anvendes enheder. I AOP oprettes en underklasse under kรธrsel, hvor mรฅlmetoden skal tilsidesรฆttes, og rรฅdgivning er inkluderet afhรฆngigt af deres konfiguration.
  • proxy: Dette objekt skal oprettes efter at have anvendt rรฅdgivningen pรฅ mรฅlobjektet.
  • Vรฆvning: Dette er en metode til at forbinde et aspekt med andre applikationsobjekter eller typer for at bygge et anbefalet objekt.

Installation af Java Forรฅr

Nu i dette Java Forรฅr tutorial, vil vi lรฆre trin for trin information for at installere Java Forรฅr i din computer:

Trin 1) ร…bn din browser.
Gรฅ til www.eclipse.org.

Trin 2) Hent Eclipse Installer.
Hent Eclipse Neon installationsprogram og installer det pรฅ din Windows system.

Installation af Java Forรฅr

Trin 3) Find 64-bit version.
Klik pรฅ knappen "Download 64-bit".

Installation af Java Forรฅr

Trin 4) Find IDE til Java Udviklere.
Gรฅ til Eclipse IDE til Java Udviklere og klik pรฅ linket "64-bit".

Installation af Java Forรฅr

Trin 5) Find 64-bit link.
Klik pรฅ "Windows 64-bit" link.

Installation af Java Forรฅr

Trin 6) Download zip-fil.
Klik pรฅ knappen "Download" for at downloade zip-filen.

Installation af Java Forรฅr

Trin 7) Udpak zip-filen.
Udpak download-zip til en bestemt mappe.

Installation af Java Forรฅr

Trin 8) Vรฆlg arbejdsomrรฅdemappe.
Klik pรฅ "Gennemse"-knappen for at vรฆlge arbejdsomrรฅdemappen.

Installation af Java Forรฅr

Trin 9) Vรฆlg mappe.
Klik pรฅ "Vรฆlg mappe" for at vรฆlge en mappe.

Installation af Java Forรฅr

Processen vil blive vist som vist pรฅ fรธlgende skรฆrm.

Installation af Java Forรฅr

Trin 10) ร…bn klient.
ร…bning Eclipse Markedspladsklient.

  1. Gรฅ til menuen Hjรฆlp.
  2. Klik pรฅ "Eclipse Marketpalce" mulighed.

Installation af Java Forรฅr

Trin 11) Sรธg spring plugin.
Sรธger og installerer Spring plugin.

  1. Skriv forรฅr i "Find" tekstboksen.
  2. Klik pรฅ ikonet "Sรธg".
  3. Klik pรฅ knappen "Installer" for at installere et plugin.

Installation af Java Forรฅr

Trin 12) Klik pรฅ knappen 'bekrรฆft'.
Bekrรฆft valgte funktioner, og klik pรฅ knappen "Bekrรฆft".

Installation af Java Forรฅr

Trin 13) Accepter betingelser.
Accept af vilkรฅr og betingelser og installation af softwaren.

  1. Klik pรฅ alternativknappen "Jeg accepterer vilkรฅrene i licensaftalerne".
  2. Klik pรฅ knappen "Udfรธr" for at afslutte installationen.

Installation af Java Forรฅr

En velkomstskรฆrm vil blive vist med softwareinstallationens fremskridt.

Installation af Java Forรฅr

Trin 14) Genstart IDE.
Klik pรฅ knappen "Genstart nu" for at genstarte Eclipse IDE og anvende รฆndringerne.

Installation af Java Forรฅr

Fรธlgende skรฆrm vil blive vist:

Installation af Java Forรฅr

Fordele ved Spring Framework

Her er vigtige fordele/fordele ved at bruge fjeder.

  • Spring giver udviklere mulighed for at udvikle applikationer i virksomhedsklassen ved hjรฆlp af POJO'er.
  • Tilbyder skabeloner til Hibernate, JDBC, Hibernate, JPA osv. for at undgรฅ at skrive lang kode.
  • Giver abstraktion til Java Enterprise Edition (JEE).
  • Du kan organisere en fjeder pรฅ en modulรฆr mรฅde. Sรฅ hvis et antal pakker og klasser er betydelige, behรธver du kun at vide, hvad du har brug for, og ignorere resten.
  • Det tilbyder deklarativ stรธtte til transaktioner, formatering, validering, caching osv.
  • Applikationen udviklet ved hjรฆlp af spring er enkel, da den miljรธafhรฆngige kode flyttes ind i denne ramme.

Ulemper ved Spring Framework

Her er ulemper/ulemper ved Spring Framework.

  • Java forรฅret byder pรฅ for mange begrรฆnsninger.
  • Koden er offentlig, fordi den er synlig for alle.
  • Det tilbyder heller ikke specialbyggede funktioner.

Resumรฉ

  • Spring framework er en nem at bruge open source Java perron
  • Foruddefinerede skabeloner og lรธst par er vigtige trรฆk ved Java forรฅr
  • Spring framework blev skrevet af Rod Johnson og blev fรธrst udgivet i juni 2002
  • Spring Framework indeholder 20 moduler, som kan bruges baseret pรฅ et applikationskrav.
  • Java spring dispatcherServlet kommunikerer med HandlerMapping. Det tilbagekalder ogsรฅ controller, der er knyttet til den specifikke anmodning.
  • Aspekt-orienteret programmering gรธr det muligt for et programs globale egenskaber at bestemme, hvordan det kompileres til et eksekverbart program.
  • Den stรธrste fordel ved Java Forรฅret er, at det giver udviklere mulighed for at udvikle applikationer i virksomhedsklassen ved hjรฆlp af POJO'er
  • Den stรธrste ulempe ved Java forรฅret er, at det giver for mange begrรฆnsninger.

Tjek ogsรฅ:- Top 80 Spรธrgsmรฅl og svar til interview med MVC Framework fra forรฅret

Opsummer dette indlรฆg med: