溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用Maven怎么對Spring進行配置

發(fā)布時間:2021-05-19 15:57:39 來源:億速云 閱讀:175 作者:Leah 欄目:編程語言

這篇文章給大家介紹使用Maven怎么對Spring進行配置,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

Maven中的Spring基本依賴關(guān)系

Spring的設(shè)計是高度模塊化的 - 使用Spring的一部分不應(yīng)該而且不需要另一部分。例如,基本的Spring Context可以沒有Persistence或MVC Spring庫。

讓我們先從一個基本Maven配置,將只使用了spring-context依賴:

<properties>
  <org.springframework.version>3.2.8.RELEASE</org.springframework.version>
  <!-- <org.springframework.version>4.0.2.RELEASE</org.springframework.version> -->
</properties>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-context</artifactId>
  <version>${org.springframework.version}</version>
  <scope>runtime</scope>
</dependency>

這個依賴項 - spring-context - 定義了實際的Spring Injection Container,并且有少量的依賴項:spring-core,spring-expression,spring-aop和spring-beans。通過支持一些核心Spring技術(shù)來擴充容器:Core Spring實用程序,Spring表達式語言(SpEL),面向?qū)ο缶幊讨С趾蚃avaBeans機制。

注意我們在運行時范圍中定義了依賴關(guān)系- 這將確保在任何特定于Spring的API上沒有編譯時依賴性。對于更高級的用例,可以從一些選定的Spring依賴項中刪除運行時范圍,但是對于更簡單的項目,不需要針對Spring進行編譯以充分利用該框架。

另請注意,從Spring 3.2開始,不需要定義CGLIB依賴項(現(xiàn)在已升級到CGLIB 3.0) - 它已被重新打包(所有net.sf.cglib包現(xiàn)在是org.springframework.cglib)并且直接在內(nèi)部內(nèi)聯(lián)spring-core JAR(有關(guān)其他詳細信息,請參閱JIRA)。

Maven配置Spring Persistence

現(xiàn)在讓我們看一下Spring Persistence依賴關(guān)系 - 主要是spring-orm:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-orm</artifactId>
  <version>${org.springframework.version}</version>
</dependency>

這附帶了Hibernate和JPA支持 - 例如HibernateTemplate和JpaTemplate - 以及一些額外的,持久性相關(guān)的依賴項:spring-jdbc和spring-tx。

JDBC數(shù)據(jù)訪問庫定義了Spring JDBC支持以及JdbcTemplate,而spring-tx代表了極其靈活的事務(wù)管理抽象。

Maven配置Spring MVC

要使用Spring Web和Servlet支持,除了上面的核心依賴項外,還需要在pom中包含兩個依賴項:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-web</artifactId>
  <version>${org.springframework.version}</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-webmvc</artifactId>
  <version>${org.springframework.version}</version>
</dependency>

spring-web依賴項包含Servlet和Portlet環(huán)境的公共web特定實用程序,而spring-webmvc支持Servlet環(huán)境的MVC。

由于spring-webmvc將spring-web作為依賴項,因此在使用spring-webmvc時不需要明確定義spring-web。

使用Maven配置Spring Test

Spring Test Framework可以通過以下依賴項包含在項目中:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-test</artifactId>
  <version>${spring.version}</version>
  <scope>test</scope>
</dependency>

從Spring 3.2開始,Spring MVC Test項目已經(jīng)包含在核心測試框架中 - 因此包括spring-test依賴就足夠了。

使用Milestones

Spring的發(fā)布版本托管在Maven Central上。但是,如果項目需要使用Milestones版本,則需要將自定義Spring存儲庫添加到pom中:

<repositories>
  <repository>
    <id>repository.springframework.maven.milestone</id>
    <name>Spring Framework Maven Milestone Repository</name>
    <url>http://repo.spring.io/milestone/</url>
  </repository>
</repositories>

已定義了一個此存儲庫,該項目可以定義依賴項,例如:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-core</artifactId>
  <version>3.2.0.RC2</version>
</dependency>

使用Snapshots

與Milestones類似,Snapshots托管在自定義存儲庫中:

<repositories>
  <repository>
    <id>repository.springframework.maven.snapshot</id>
    <name>Spring Framework Maven Snapshot Repository</name>
    <url>http://repo.spring.io/snapshot/</url>
  </repository>
</repositories>

在pom.xml中啟用SNAPSHOT存儲庫后,可以引用以下依賴項:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-core</artifactId>
  <version>3.3.0.BUILD-SNAPSHOT</version>
</dependency>

對于4.x:

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-core</artifactId>
  <version>4.0.3.BUILD-SNAPSHOT</version>
</dependency>

關(guān)于使用Maven怎么對Spring進行配置就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI