Hva er Spring Framework? - Veien til effektiv utvikling



Denne bloggen om hva som er Spring Framework snakker om det mye brukte Java Framework - Spring. Den forteller også hvorfor og hvordan du bruker Spring Framework med eksempler.

I dagens fartsfylte verden trenger vi alt for å være rask. Vi ønsker ikke å holde oss engasjert i ett arbeid for lenge, la det være noe som å reise, handle, studere eller jobbe. Når det gjelder koding, ønsker vi at applikasjonene våre skal utvikles på kortest mulig tid, men gir full effektivitet. Vi kan ha det travelt, men likevel kan vi verken gå på akkord med kvaliteten vår, eller vi vil legge for mye krefter på den. Så hva er løsningen? Rammeverk fungerer best i denne situasjonen. Det er forskjellige rammer tilgjengelig der ute i markedet, hvorav få brukes som: Spring, Hibernate, Struts etc. Gjennom denne bloggen, la oss finne ut hva som er Spring Framework og hvorfor det er så populært i markedet!

Før vi begynner, kan vi ta en titt på emnene jeg skal diskutere i denne bloggen:





Java Frameworks

Hvorfor bør vi gå for Frameworks?La ossforstå det med vennen vår, Coddy .

Coddy in problem - What Is Spring Framework - Edureka!



Coddy får en oppgave å utvikle en applikasjon, men den tildelte tiden er ikke tilstrekkelig til å fullføre den. Han må skrive mange kodelinjer (LOC) alene. Det er veldig tidkrevende og slitsomt. Han er forvirret hva han skal gjøre! Hvor han skal starte fra!

Coddy begynner å tenke på en løsning på problemet hans. Han trenger noe som er raskt og effektivt sparer tid og krefter, som noe ferdig.



Plutselig slår ideen om å bruke Frameworks ham. Rammeverk er raske, effektive og lette. De er store kropper med forhåndsdefinerte koder som vi enkelt kan legge til i vår egen kode for å løse et spesifikt problem.

Han koder ved hjelp av Framework. Overraskende nok er koden lett utstyrt med rammen.

Coddy kan nå kode raskere og fullføre søknaden innen den gitte tidsrammen. Videre er han fri for å skrive tusenvis av linjer med ikke-funksjonell kode.

Etter å ha distribuert applikasjonen som ble utviklet ved hjelp av Framework, fant han at den ble kjørt med mye høyere hastighet, og dens gjennomstrømning økte også sammenlignet med andre applikasjoner som ble utviklet uten å bruke Framework.

Så, la oss nå begynne med Java Frameworks.

Hvordan Java Frameworks ble til?

Sent på 1990-tallet ble applikasjonene mye utviklet ved bruk av JEE-standarder. Forutsetningen for J2EE var multi-platform / multi-vendor. Hvis du kan kode i henhold til J2EE-standardene, kan du distribuere applikasjonen din på hvilken som helst J2EE-applikasjonsserver uavhengig av plattform. Å kjøre koden på en hvilken som helst applikasjonsserver gir deg mange fordeler som - transaksjonsadministrasjon, meldinger, utsendelse, kataloggrensesnitt osv. Men siden ingenting blir lett i denne verden, hadde det også noen problemer å jobbe med J2EE.

  • VeldigKompleks : Enterprise Java Bean ble utviklet for å redusere kompleksiteten i J2EE-applikasjoner. Men det lyktes ikke i målet med implementeringen. Årsaken bak det er at mens du skriver en komponent, er det nødvendig å skrive et sett med XML-filer, hjemmegrensesnitt, eksterne / lokale grensesnitt osv.
  • 'Oppslag' -problem: Hver gang en komponent var avhengig av en annen komponent, måtte den se opp for komponentene den var avhengig av av seg selv. Denne komponenten 'oppslag' skjer bare etter navn, så navnet på avhengigheten ble hardkodet i komponenten.
  • Tung vekt: Som enHvis funksjoner som klynging, fjernkontroll osv. ble støttet, må du konfigurere dem, uavhengig av at du trenger dem eller ikke. Dette vil gjøre applikasjonene dine oppblåste.

Slik ble Java Frameworks til. Java Frameworks er bare store organer med forhåndsdefinert kode som du kan bruke på din egen kode for å løse problemet ditt i et bestemt domene. Du kan bruke et rammeverk ved å kalle metodene, arven, ved å gi 'tilbakering', lyttere eller andre implementeringer av Observatør mønster.

La oss forstå det gjennom en billedlig fremstilling:

Men hvordan reduserer de akkurat vårt arbeid og gjør kodene våre effektive? For å forstå det, gå gjennom følgende fordelerogulemperav disse rammene. La oss begynne med fordeler .

Effektivitet:

Oppgaver som vanligvis tar deg timer og hundrevis av kodelinjer å komponere, kan nå gjøres på få minutter med forhåndsbygde funksjoner. Utvikling blir mye lettere, så hvis det er mye enklere, er det mye raskere og senere mer effektivt.

Sikkerhet:

Et mye brukt rammeverk vil generelt ha stortsikkerhetapplikasjoner. Den store fordelen ernabolagbak det rammeverket, der brukerne vanligvis ender med å være langvarige testere. Hvis du finner et sårbarhet eller et sikkerhetshull, kan du gå til rammeverkets nettsted og gi dem beskjed slik at det kan løses.

Kostnader:

De mest populære strukturer er gratis, og det hjelper utvikleren å kode raskere. Hvis kodingen gjøres raskere, vil utgiftene for den endelige klienten sikkert være mindre i alle aspekter, det være seg tid eller krefter. Videre er vedlikeholdskostnadene også lave.

Brukerstøtte:

Som ethvert annet distribuert verktøy, inkluderer et rammeverk generelt dokumenter, en støttegruppe eller store fora på nettet der du kan få raske svar.

Til tross for at alle disse fordelene har Java Frameworks noen ulemper , som:


Begrensninger:

Rammeverkets grunnleggende atferd kan ikke endres, noe som indikerer at når du bruker et rammeverk, må du respektere begrensningene og jobbe slik det kreves. Dermed må du sørge for at du velger et rammeverk som passer dine behov.

Koden er offentlig:

Siden rammeverket er lett tilgjengelig for alle, vil jegDet tilbys også folk med dårlige intensjoner. Det kan studeres for å vite hvordan ting fungerer og for å oppdage feil som kan brukes mot deg.

Tilpasset Egenskaper:

Når du bruker et rammeverk, vet du veldig lite om språket bak det fordi funksjonene i det er spesialbygd.Når du bruker spesialbygde funksjoner, er det veldig sannsynlig at du må bruke dem i henhold til rammeverkets standarder som kan avvike fra det opprinnelige konseptet.

atdu kjenner fordeler og ulemperav rammene,velg rammeverket ditt etter ditt behov. Det finnes forskjellige typer rammer tilgjengelig i markedet. Nedenfor viser diagrammet noen av dem:

Så i denne bloggen vil vi fokusere på Spring Framework.

Hva er Spring Framework?

Her oppstår spørsmålet “Hva er vårramme”?

Spring Framework er et kraftig rammeverk for applikasjonsutvikling som brukes for Enterprise Java (JEE).

Kjernefunksjonene i Spring Framework kan brukes til å utvikle alle Java-applikasjoner.Det kan beskrives somkomplett og modulært rammeverk. Spring Framework kan brukes til alle lagimplementeringer av en sanntidsapplikasjon. Den kan også brukes til utvikling av et bestemt lag i en sanntidsapplikasjon i motsetning til Struts og Hibernate, men med Spring kan vi utvikle alle lag.

Dette handlet om hva som er Spring Framework, men hvordan det ble utviklet? Det er en interessant historie bak. La oss ta en titt på vår rammes historie og opprinnelse.

I oktober 2002 Rod Johnson , en australsk dataspesialist, skrev en bok med tittelen Expert One-on-One J2EE Design and Development. I denne boka foreslo han en enklere løsning basert på vanlige Java-klasser (POJO) og avhengighetsinjeksjon. Han skrev over 30.000 linjer med infrastrukturkode som inkluderte en rekke gjenbrukbare Java-grensesnitt og klasser for utvikling av applikasjonen. Rundt februar 2003 begynte Rod, Juergen og Yann å samarbeide om vårprosjektet. Navnet 'Spring' ble gitt da det betydde en ny start etter 'Winter' av tradisjonell J2EE.

Følgende er tidslinjen vist om store utgivelser i vårens historie:

Den ble kalt Interface 21, som en referanse til det 21. århundre og utgitt under Apache 2.0-lisens.
Dette var den første milepælutgivelsen. Vårrammen utviklet seg raskt siden denne utgivelsen. Interface21 støttet AspectJ parallelt med Spring Framework.
Nye funksjoner ble lagt til - utvidbare XML-konfigurasjoner, støtte for Java 5 og dynamiske språk, IoC-utvidelsespunkter og AOP-forbedringer.
Nye funksjoner ble lagt til - støtte for Java 6 / JEE5, merkekonfigurasjoner, automatisk gjenkjenning av komponenter i klassesti og OSGi-kompatible pakker.
Nye funksjoner ble lagt til - støtte for omorganisert modulsystem, SpEL, JavaConfig, innebygde databaser, REST-støtte og støtte for Java EE 6.
Spring Data Commons Project ble utgitt. Senere i 2012 forlot Rod Johnson vårlaget.
Alle vårprosjekter flyttet til Pivotal. Nye funksjoner ble lagt til - full støtte for Java 8, websockets, høyere tredjepartsbibliotekavhengigheter, groovy DSL for bean-definisjoner.
Den var kompatibel med Java 6, 7 og 8, med fokus på kjernejusteringer og moderne nettfunksjoner.
Det blir den siste generasjoneninnenfor de generelle Spring 4 systemkravene. 4.3.8 er den gjeldende versjonen.

Hvorfor Spring Framework?

Nedenfor er et diagram gitt som viser sammenligningen mellom våren og forskjellige andre rammer.

Nedenfor er en graf basert på en undersøkelse,fra mai 2016. Som du kan se fra grafen at Spring Framework er veldig populært i sitt domene og har fortsatt å holde sin posisjon på tpå siden 2014.

Årsaker til vårrammeverkets popularitet

Det er generelt tre hovedårsaker til Spring Framework's popularitet.

  1. Enkelhet
  2. Testbarhet
  3. Løs kobling

La oss diskutere disse emnene i detaljer.

Enkelhet: Spring Framework er enkelt fordi det ikke er invasivt, ettersom det bruker POJO- og POJI-modeller.

  • POJO (Vanlige gamle Java-objekter): AJava-klasse, ikke kombinert med noen teknologi eller noe rammeverk, kalles ' POJO ' .
  • POJI (Plain Old Java Interfaces): Et Java-grensesnitt som ikke er kombinert med noen teknologi eller noe rammearbeid kalles ' POJI ' .

Testbarhet : For å skrive Sbambusapplikasjon, er server ikke obligatorisk. Men for stivere og EJB-applikasjoner, trenger du en server hvis du vil teste applikasjonen. Det kan trenge mange endringer i kilden og for å se disse endringene hver gang du må starte serveren på nytt. Dette blir kjedelig og tidkrevende. I tilfelleSpring Framework, den har sin egen container for å kjøre applikasjonenkationer.

Løs kobling: Spring Framework er løst koblet fordi det har konsepter som Dependency Injection, AOP etc. Disse funksjonene hjelper til med å redusere avhengighet og øke modulærheten i koden. La oss forstå dette med et eksempel.

hva er løs kobling i java

Her har jeg et sykkelgrensesnitt som har en start () -metode. Den er videre implementert av tre klasser, nemlig: Yamaha, Honda og Bajaj.

offentlig grensesnitt Sykkel {offentlig ugyldig start ()}

Her oppretter en klasse Rider et objekt av hvilken som helst klasse som implementerer Bike-grensesnittet.

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

Nå kan Spring Framework-containeren injisere et objekt av hvilken som helst klasse som implementerer sykkelgrensesnitt, i henhold til kravet. Slik fungerer løs kobling.

Vårens rammearkitektur

Som du kan se fra diagrammet ovenfor at Spring har en lagdelt arkitektur som består av forskjellige moduler som har sin egen funksjonalitet. Disse modulene er generalisert i følgende lag:

  • Kjernebeholder
  • Datatilgang / integrering
  • Internett
  • AOP (Aspect Oriented Programming)
  • Instrumentering
  • Test.

Du lurer kanskje på hva er Spring Framework fordel med å ha lagdelt arkitektur? La oss finne ut av følgende punkter:

  • Spring Framework organiserer effektivt objektene dine på mellomnivå.
  • Uavhengig av kjøretidsmiljøet, kan Spring Frameworks konfigurasjonsadministrasjonstjenester brukes i ethvert arkitektonisk lag.
  • Spring Framework håndterer konfigurasjonen på en jevn måte gjennom hele applikasjonen. Dette eliminerer behovet for å bruke en rekke tilpassede filformater.
  • Spring Framework er utformet på en slik måte at applikasjoner som er bygget med den, vil avhenge av så få av APIene som mulig.
  • På grunn av bruken av grensesnitt,Spring Framework legger til rette for god programmeringspraksis.

For å forstå hva som er Spring Framework, la oss se en enkel Spring Framework-applikasjon. Følg de fem enkle trinnene:

Trinn I: Opprette Bean-klassen

pakke org.edureka.firstSpring offentlig klasse StudentBean {String name public String getName () {return name} public void setName (String name) {this.name = name} public void displayInfo () {System.out.println ('Hello: '+ navn)}}

Trinn II: Opprett en XML-fil

 

Trinn III: Lag hovedklassen

pakke 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 ClassPathXmlApplicationContext ) StudentBean-fabrikk = (StudentBean) appCon.getBean ('studentbean') factory.displayInfo ()}}

Trinn IV: Last inn jar-filene

Last inn følgende jar-filer.

  • commons-logging-1.2.jar
  • javax.servlet-api-3.1.0.jar
  • jstl-1.2.jar
  • spring-aop-4.2.2.RELEASE.jar
  • vårbønner-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

MERK: Hvis du trenger jar-filene, kan du kommentere nedenfor.

Trinn V: Kjør programmet

Kjør programmet på serveren din for å teste applikasjonen.

Håper jeg klarte å forklare tydelig, hva er Spring Framework, hvordan fungerer det nøyaktig og hva brukes det til. Du henviser også til videoen på “What Is Spring Framework”, der instruktøren beskriver emnene som er diskutert i denne bloggen sammen med praktisk demonstrasjon.

Hva er vårramme i Java | Spring Framework Tutorial | Edureka

Hvis du er interessert i å lære mer om Spring Framework, følg med på denne bloggserien min fordi jeg kommer med en annen blogg på som vil snakke om mer avanserte konsepter på våren.

Hvis du vil lære våren og ønsker å bruke det mens du utvikler Java-applikasjoner, kan du sjekke ut av Edureka, et pålitelig online læringsfirma med et nettverk av mer enn 250 000 fornøyde elever spredt over hele verden.

Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet, så kommer vi tilbake til deg.