Vår med Maven

Innholdsfortegnelse

  1. Oversikt
  2. Grunnleggende våravhengigheter med Maven
  3. Vårpersistens med Maven
  4. Vår MVC med Maven
  5. Vårsikkerhet med Maven
  6. Vårtest med Maven
  7. Bruke milepæler
  8. Bruke øyeblikksbilder
  9. Konklusjon

1. Oversikt

Denne opplæringen illustrerer hvordan du setter opp våravhengighetene via Maven. De siste vårutgivelsene finner du på Maven Central.

2. Grunnleggende våravhengigheter med Maven

Våren er designet for å være svært modulær - bruk av en del av våren bør ikke og krever ikke en annen. For eksempel kan den grunnleggende vårkonteksten være uten Persistence- eller MVC Spring-bibliotekene.

La oss starte med en grunnleggende Maven oppsett som bare vil bruke de vår-kontekst avhengighet:

 5.2.8.RELEASE org.springframework spring-context $ {org.springframework.version} runtime 

Denne avhengigheten - vår-kontekst - definerer den faktiske Spring Injection Container og har et lite antall avhengigheter: vårkjernen, våruttrykk, vår-aop, og vårbønner. Disse forsterker containeren ved å muliggjøre støtte for noen av kjerne vårteknologier: Core Spring-verktøyene, Spring Expression Language (SpEL), Aspect-Oriented Programming support og JavaBeans-mekanismen.

Merk at vi definerer avhengigheten i kjøretid omfang - dette vil sørge for at det ikke er noen avhengighet av kompileringstid på noen vårspesifikke API-er. For mer avanserte brukstilfeller, kjøretid omfanget kan fjernes fra noen utvalgte våravhengigheter, men for enklere prosjekter er det ikke behov for å kompilere mot våren å utnytte rammeverket fullt ut.

Vær også oppmerksom på at JDK 8 er den minste Java-versjonen som kreves for våren 5.2. Den støtter også JDK 11 som den nåværende LTS-grenen og JDK 13 som den siste OpenJDK-utgivelsen.

3. Vårpersistens med Maven

La oss nå se på utholdenhetens våravhengighet - hovedsakelig vår-orm:

 org.springframework spring-orm $ {org.springframework.version} 

Dette kommer med dvalemodus og JPA-støtte - som f.eks Dvalemodus og JpaTemplate - i tillegg til noen få andre, utholdenhetsrelaterte avhengigheter: vår-jdbc og vår-tx.

JDBC Data Access-biblioteket definerer vår JDBC-støtte så vel som JdbcTemplate, og vår-tx representerer den ekstremt fleksible Abstraction Transaction Management.

4. Vår-MVC med Maven

For å bruke Spring Web og Servlet-støtte, må to avhengigheter inkluderes i pom, igjen i tillegg til kjerneavhengighetene ovenfra:

 org.springframework spring-web $ {org.springframework.version} org.springframework spring-webmvc $ {org.springframework.version} 

De vår-nett avhengighet inneholder vanlige nettspesifikke verktøy for både Servlet- og Portlet-miljøer, mens vår-webmvc muliggjør MVC-støtte for Servlet-miljøer.

Siden vår-webmvc har vår-nett som en avhengighet, eksplisitt definerende vår-nett er ikke nødvendig når du bruker vår-webmvc.

Fra og med våren 5.0 kan vi legge til avhengigheten av Spring WebFlux for støtte for reaktivt stablet nettverk.

 org.springframework spring-webflux $ {org.springframework.version} 

5. Vårsikkerhet med Maven

Sikkerhet Maven avhengigheter blir diskutert i dybden i artikkelen om vårsikkerhet med Maven.

6. Vårtest med Maven

Spring Test Framework kan inkluderes i prosjektet via følgende avhengighet:

 org.springframework spring-test $ {spring.version} test 

Med vår 5 kan vi også utføre samtidig testutførelse.

7. Bruke milepæler

Utgivelsesversjonen av Spring er vert på Maven Central. Imidlertid, hvis et prosjekt trenger å bruke milepælversjoner, må et tilpasset vårlager legges til pom:

  repository.springframework.maven.milestone Spring Framework Maven Milestone Repository //repo.spring.io/milestone/ 

Når dette depotet er definert, kan prosjektet definere avhengigheter som:

 org.springframework spring-core 5.3.0-M1 

8. Bruke øyeblikksbilder

I likhet med milepæler er øyeblikksbilder vert i et tilpasset depot:

  repository.springframework.maven.snapshot Spring Framework Maven Snapshot Repository //repo.spring.io/snapshot/ 

Når SNAPSHOT-depotet er aktivert i pom.xml, kan følgende avhengigheter henvises:

 org.springframework spring-core 4.0.3.BUILD-SNAPSHOT 

I tillegg til - for 5.x:

 org.springframework spring-core 5.3.0-SNAPSHOT 

9. Konklusjon

Denne artikkelen diskuterer de praktiske detaljene ved bruk Vår med Maven. Maven-avhengighetene som presenteres her er selvfølgelig noen av de viktigste, og flere andre kan være verdt å nevne og har ennå ikke gjort kuttet. Likevel bør dette være et godt utgangspunkt for å bruke Spring i et prosjekt.


$config[zx-auto] not found$config[zx-overlay] not found