Forårsramme forklaret på 5 minutter eller mindre

Spring Framework er en kraftfuld open source Java-applikationsudviklingsramme, der gør det nemt at skabe robuste, højtydende applikationer.

Open source refererer til noget folk kan få adgang til, ændre og dele frit, da kildekoden er frit tilgængelig.

En open source-applikationsramme er en skabelon til softwareudvikling skabt af en gruppe softwareudviklere. Der findes forskellige typer skabeloner, der bruges til forskellige formål, såsom oprettelse af brugergrænseflader, websteder og grundlæggende softwareapplikationer.

Hvis du er ny inden for applikationsudvikling, kan det være en god start for dig at komme i gang med Spring Framework. I denne artikel lærer du, hvad det er, og hvordan du bruger det.

Hvad er Spring Framework?

Spring Framework er en open source-ramme, som udviklere bruger til at skabe Java-applikationer til virksomheder. Denne ramme blev skabt af Rod Johnson og udgivet i 2003 under Apache 2.0-licensen.

Nogle programmører bash normalt Java og hævder, at det er besværligt at skabe grundlæggende applikationer. Spring Framework har til formål at forenkle den besværlige og komplekse proces med at udvikle Java-applikationer til virksomheder.

Foråret er bredt. Det er derfor tilrådeligt, at du først forstår, hvad Spring-rammen er, før du begynder at bruge andre Spring-baserede projekter såsom Spring Boot, Spring GraphQL og Spring Cloud.

Hvorfor bruge Spring Framework?

  • Fleksibel. Denne ramme tilbyder teknologier såsom Aspect-oriented programmering (AOP), Dependency injection (DI) og Plain Old Java Object (POJO). Du kan således bruge Spring til at nå forskellige mål.
  • Foråret er hurtigt. På trods af at de har alle disse teknologier, er Spring Framework stadig let, hvilket gør det ideelt til at skabe skalerbare og robuste virksomhedswebapplikationer.
  • Fantastisk fællesskab. Foråret har et mangfoldigt fællesskab, og du kan stole på, at det hjælper med forskellige løsninger, når du har brug for det.
  • Sikker. Spring er kendt for sine sikkerhedsforanstaltninger, og sårbarheder rettes altid gennem hyppige patches. Tredjepartsafhængigheder overvåges altid for at sikre, at deres sårbarheder ikke forstyrrer kerneprocessen.
  • Produktiv. Spring Framework strømliner oplevelsen af ​​at udvikle Java-virksomhedsapplikationer.
  21 TF-kort til dit kamera og andre gadgets

Fjedre funktioner

Understøtter aspektorienteret programmering

Aspektorienteret programmering giver mere modularitet til tværgående bekymringer. AOP komplimenterer også Objektorienteret programmering.

Hovedenheden for modularitet i AOP er en tværgående bekymring (Aspect). Udviklere kan således skabe deklarative virksomhedstjenester og tilpassede aspekter.

Inversion of Control (IoC) container

IoC-container tilbyder en strømlinet måde at administrere og konfigurere Java-objekter på. Livscyklussen for et defineret Java-objekt administreres af denne container, hvilket markant øger rekonfigurerbarheden af ​​en Spring-baseret applikation.

Inversion of Control anvender afhængighedsopslag eller afhængighedsinjektionsmønstre til at tilbyde objektreferencekørsel. IoC-beholder leveres med assembler-kode, der er nødvendig til konfigurationsstyring.

Dataadgangsramme

Datakommunikationsprocessen er forenklet, da Spring har direkte understøttelse af Hibernate, JDBC og Java Persistence API (JPA), nogle af de mest populære dataadgangsrammer i Java. Du kan også bruge denne ramme for at tilbyde funktioner såsom ressourceindpakning, undtagelseshåndtering og ressourcestyring for alle de understøttede dataadgangsrammer.

Spring MVC Framework

Udviklere kan bruge denne anmodningsbaserede ramme til at skabe tilpassede MVC-implementeringer, der passer til deres behov.

DispatcherServlet-klassen, der har til opgave at håndtere brugernes anmodninger og derefter videresende dem til den rigtige controller, er kernen i Spring MVC. Controlleren kan således behandle en anmodning, oprette en model og tilbyde information til slutbrugeren gennem en specificeret visning.

Har flere testrammer

Du kan teste dine Spring-baserede applikationer, mens du udvikler dem gennem Mock-objekter, TestContext-rammen eller Spring MVC-testen.

Sprogstøtte

Spring framework understøtter Groovy og Kotlin.

Forårs arkitektur

Spring Framework kommer med omkring 20 moduler. Det gode ved dette framework er, at det giver dig mulighed for at vælge moduler, der er relevante for din use case. Disse moduler er grupperet i Core Container, AOP (Aspect Oriented Programming), Data Access/Integration, Web, Instrumentation og Test.

Billedkredit: Spring.io

#1. Kernebeholder

The Core Container of Spring Framework indeholder Core-, Beans-, Context- og Expression Language-modeller. Disse sprogmodeller er nyttige på følgende måder;

  • Kernemodulet er den grundlæggende del af rammen. Du finder IoC og Dependency Injection-funktioner i kernen.
  • Bean-modulet er kendt for BeanFactory, en sofistikeret implementering af fabriksmønsteret.
  • Kontekstmodulet er bygget på Core- og Bean-modulerne. Dette modul arver dets funktioner fra Bean-modulet, men tilføjer understøttelse af internationalisering.
  • Expression Language-modulet tilbyder et kraftfuldt udtrykssprog til at manipulere og forespørge på en objektgraf under kørsel.
  7 bedste videobeskedapps til at optage skærm og kamera

#2. Dataadgang/Integration

JDBC-, ORM-, OXM-, JMS- og Transaktionsmoduler udgør dataadgang/integrationslaget. Disse moduler udfører følgende;

  • JDBC-modulet har et JBDC-abstraktionslag, der eliminerer behovet for at udføre kedelig JDBC-kodning samt parsing af database-leverandør-specifikke fejlkoder.
  • ORM er et integrationslag til nogle af de populære objektrelationelle kortlægnings-API’er såsom JPA, JDO, Hibernate og iBatis. ‘
  • OXM-modulet er et abstraktionslag, der understøtter objekt/XML-mapping-implementeringer til XStream, JAXB, JiBX, Castor og XMLBeans.
  • Transaktionsmodulet understøtter deklarativ og programmatisk transaktionsstyring for klasser, der implementerer specielle grænseflader.
  • Java Messaging Service-modulet (JMS) har funktioner, der producerer og forbruger beskeder.

#3. AOP (Aspect Oriented Programming) og instrumentering

Dette modul leveres med AOP Alliance-kompatibel aspekt-orienteret programmeringsimplementering, som gør det nemt at definere ting som f.eks. metodeinterceptorer. På den anden side tilbyder Instrumentation-modulet klasseindlæser- og klasseinstrumenteringsunderstøttelse til brug i visse applikationsservere.

#4. Web

Web-, Web-Servlet-, Web-Struts og Web-Portlet-moduler udgør weblaget.

  • Webmodulet er ansvarligt for grundlæggende web-orienterede integrationsfunktioner såsom multipart fil-upload-funktionalitet.
  • Web-Servlet-modulet indeholder Springs MVC-implementering til webapplikationer.
  • Web-Portlet-modulet afspejler funktionaliteten af ​​Web-Servlet-modulet. Web-Portlet-modulet tilbyder MVC-implementering til brug i et portlet-miljø.
  • Web-Socket-modulet understøtter tovejskommunikation mellem serveren og klienten i webapplikationer.

#5. Prøve

Testmodulet er den sidste del af Springs arkitektur. Det er modulet, der understøtter test af fjederkomponenter med TestNG eller JUnit.

Installer Spring Framework

Tjek at Java er installeret

Før vi lærer, hvordan Spring Framework fungerer, skal vi installere Spring på vores pc. Forårsdokumentation har omfattende ressourcer til, hvordan du kommer i gang, afhængigt af dit operativsystem.

I vores tilfælde skal vi bruge Ubuntu 20.04.5, et Linux-baseret operativsystem.

Før du installerer Spring, skal du sikre dig, at du har Java installeret ved hjælp af denne kommando

java -version

Hvis du har Java installeret, vil du have et output svarende til dette skærmbillede.

Hvis du ikke har det på din pc, er der flere metoder til at installere Java baseret på dine behov.

Installer fjederramme

Der er flere tilgange til at installere Spring-rammen, som fremhævet i Spring-dokumenter.

I vores tilfælde vil vi bruge GVM (den Groovy Environment Manager). Du kan få GVM ved hjælp af GVMtool eller installere det på kommandolinjen.

Når du har GVM, skal du bruge følgende kommandoer til at installere og kontrollere, om Spring frameworket er installeret

gvm install springboot
spring --version

Du vil sandsynligvis få et output, der ser sådan ud, hvis Spring er installeret

  Sådan lytter du til podcasts på din Mac

Vigtige vilkår i forbindelse med Spring-rammen

Afhængighedsindsprøjtning

Dependency Injection er en funktion, der giver udviklere mulighed for at skabe uafhængige objekter uden for klassen. DI giver også brugere mulighed for at levere disse objekter til en klasse på forskellige måder.

Inversion af kontrol (IoC)

IoC er et koncept, der overfører kontrollen af ​​dele af et program eller objekter til en ramme eller beholder. I traditionel programmering foretager vores brugerdefinerede kode opkald til et bibliotek. På den anden side tillader IoC en ramme (forår i dette tilfælde) til at foretage opkald til vores brugerdefinerede kode og kontrollere programmets flow.

Aspekt-orienteret programmering (AOP)

AOP er en teknik til at bygge fælles og genanvendelige rutiner, der kan anvendes i hele applikationen. En sådan tilgang adskiller gentagelige opgaver (som inputvalidering, logning og fejlhåndtering) fra kerneapplikationslogikken.

Forårsramme læringsressourcer

#1. Reaktiv programmering med Spring Framework 5

Dette forårskursus består af videoer, artikler og ressourcer, der kan downloades. Kurset underviser i funktionel programmering med Java, hvordan man mikrotjenester med Spring WebFlux og hvordan man udnytter Reactive typer i Spring Data MongoDB.

#2. Spring Framework Master Class

Spring Framework Master Class er et betalt kursus, som lærer den rigtige måde, Java-projekter bruger Spring Framework på. Du vil lære at bruge forskellige værktøjer såsom Spring Boot, JUnit & Mockito, Spring JDBC, Spring AOP og Hibernate.

#3. Spring Framework i lette trin

Spring Framework In Easy Steps er et ideelt førsteklasses kursus at tage, hvis du vil oprette End to End Java EE Web Applications ved hjælp af Spring Framework. Nogle af de ting, du vil lære, er, hvordan man udvikler webapplikationer ved hjælp af Spring MVC, hvordan man laver Ajax-opkald ved hjælp af JQuery og Spring MVC, og hvordan man bruger Spring JDBC til at udføre databaseoperationer, for at nævne nogle få.

#4. Forårsramme 5

Spring Framework 5-kurset er ideelt, hvis du vil lære Lær Spring Framework 5, Spring Data MongoDB, Spring Boot 2, Spring MVC, Spring Data JPA og Hibernate. Du kan stole på de 57 timer med on-demand-videoer, 13 artikler og en masse materialer, der kan downloades.

Forfatterens note

Java er stadig et af de mest populære programmeringssprog i den moderne verden. Selvom nye sprog bliver introduceret, bringer rammer som Spring nyt liv til Java og udvider dets anvendelighed. Vi vil derfor sandsynligvis fortsat have efterspørgsel efter Java-ingeniører, da de er nødvendige for at vedligeholde ældre kode og også skabe nye applikationer.

Konklusion

Spring rangerer højt blandt Java EE-frameworks, og vi håber, at du nu forstår, hvad Spring Framework er, dets funktioner, arkitektur og arbejdsproces. Når det kombineres med andre Spring-projekter, tilbyder Spring Framework udviklere forskellige udviklingsværktøjer, som kan bruges på tværs af forskellige udviklingsmiljøer.