使用Maven配置Spring的方法步骤

这篇文章说明了如何通过Maven配置Spring依赖项。最新的Spring版本可以在Maven Central上找到。

Maven中的Spring基本依赖关系

Spring的设计是高度模块化的 - 使用Spring的一部分不应该而且不需要另一部分。例如,基本的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技术来扩充容器:Core Spring实用程序,Spring表达式语言(SpEL)面向对象编程支持JavaBeans机制

注意我们在运行时范围中定义了依赖关系- 这将确保在任何特定于Spring的API上没有编译时依赖性。对于更高级的用例,可以从一些选定的Spring依赖项中删除运行时范围,但是对于更简单的项目,不需要针对Spring进行编译以充分利用该框架。

另请注意,从Spring 3.2开始,不需要定义CGLIB依赖项(现在已升级到CGLIB 3.0) - 它已被重新打包(所有net.sf.cglib包现在是org.springframework.cglib)并且直接在内部内联spring-core JAR(有关其他详细信息,请参阅JIRA)。

Maven配置Spring Persistence

现在让我们看一下Spring Persistence依赖关系 - 主要是spring-orm:

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

这附带了Hibernate和JPA支持 - 例如HibernateTemplate和JpaTemplate - 以及一些额外的,持久性相关的依赖项:spring-jdbc和spring-tx。

JDBC数据访问库定义了Spring JDBC支持以及JdbcTemplate,而spring-tx代表了极其灵活的事务管理抽象

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环境的公共web特定实用程序,而spring-webmvc支持Servlet环境的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项目已经包含在核心测试框架中 - 因此包括spring-test依赖就足够了。

使用Milestones

Spring的发布版本托管在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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • maven项目下solr和spring的整合配置详解

    前言: solr和spring整合其实很简单,只要注意导入依赖的配置文件即可.废话不多说,上代码. 第一步:编写maven项目的pom文件,导入依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM

  • spring boot的maven配置依赖详解

    本文介绍了spring boot的maven配置依赖详解,分享给大家,具体如下: 我们通过引用spring-boot-starter-parent,添加spring-boot-starter-web 可以实现web项目的功能,当然不使用spring-boot-start-web,通过自己添加的依赖包也可以实现,但是需要一个个添加,费时费力,而且可能产生版本依赖冲突.我们来看下springboot的依赖配置: 利用pom的继承,一处声明,处处使用.在最顶级的spring-boot-dependen

  • spring的maven配置文件整理

    spring maven配置文件整理 spring各个包的maven配置文件 <!--spring-context--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.2.2.RELEASE</version> </dependency> &

  • 详解IDEA用maven创建springMVC项目和配置

    本文介绍了IDEA用maven创建springMVC项目和配置,分享给大家,具体如下: 工具准备:IDEA2016.3 Java jdk 1.8 1.DEA创建项目 新建一个maven project,并且选择webapp原型. 然后点击next 这里的GroupId和ArtifactID随意填写,但是ArtifactID最好和你的项目一名一样然后next 为了快一点创建,我们添加一个属性值,如图中亮的所示,点右边的加号,name=archetypeCatalog value=internal.

  • 使用Maven配置Spring的方法步骤

    这篇文章说明了如何通过Maven配置Spring依赖项.最新的Spring版本可以在Maven Central上找到. Maven中的Spring基本依赖关系 Spring的设计是高度模块化的 - 使用Spring的一部分不应该而且不需要另一部分.例如,基本的Spring Context可以没有Persistence或MVC Spring库. 让我们先从一个基本Maven配置,将只使用了spring-context依赖: <properties> <org.springframework

  • Eclipse中配置Maven build打包的方法步骤

    目的:在Eclipse中配置Maven build打包 项目右击-->Run As-->Run Configurations 在左侧Maven Build下选中自己的工程名 然后在右侧Goals输入框中输入"clean package" 点击Apply完成配置,如图 注意: [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------

  • 使用Nexus搭建Maven私服教程的方法步骤

    目录 一.基本介绍(Nexus(maven私服)) 1,如果没有搭建私服会有什么问题? 2,搭建私服的优点 3,Nexus 介绍 二.Nexus 服务的安装(推荐第二种:使用docker方式安装) 1,使用二进制发行包安装 2,使用 Docker 镜像进行安装(推荐) 三.Nexus 服务的配置 附一:Maven 配置使用私服(下载依赖) 1,基本说明 2,通过 setting.xml 文件配置 3,通过 pom.xml 文件配置 附二:Maven 配置使用私服(下载插件) 附三:Maven 配

  • Django安装配置mysql的方法步骤

    近期做那个python的开发,今天就来简单的写一下Django安装配置mysql的方法步骤 安装mysql 首先安装pymysql pip install pymysql 然后安装mysqlclient pip install mysqlclient 在安装过程中可能会报类似以下错误(因为我的已经安装成功了,找了类似的图): 在window下安装python的包会出现各种问题,https://www.lfd.uci.edu/~gohlke/pythonlibs/这个网站就是专门用于解决windo

  • vscode配置anaconda3的方法步骤

    注意: 由于博文已经很多这方面的内容,这里不介绍安装vscode和anaconda的步骤,只讨论如下情况: 已经安装了anaconda,也从官网下载了vscode,如何将两者关联起来?(目前anaconda支持下载安装vscode,这里仅仅针对没有从anaconda下载而是从官网下载vscode的情况) 在anaconda中已经安装了numpy,matplotlib等安装包,不想在vscode中再次安装,与anaconda关联后可以一起调用 针对上面的情况,通过如下步骤可以解决 1,进入file

  • IDEA2020配置Git的方法步骤

    注:此方法可用于配置gitee也可用于配置github 1.在github中创建一个账号:https://github.com/join?source=header-home 2.下载并安装git:https://git-scm.com/downloads 3.安装成功后对着桌面空白右键,会发现多出来Git GUI 和 Git Bash 打开Git Bash,输入下列命令,设置git全局用户名和邮箱 4.在IDEA中设置Git,在File–>Setting->Version Control–&

  • Ubuntu20.04安装配置GitLab的方法步骤

    介绍 GitLab CE或Community Edition是一个开源应用程序,主要用于托管Git存储库,以及其他与开发相关的功能,如问题跟踪.它旨在使用您自己的基础架构进行托管,并为您的开发团队提供部署内部存储库的灵活性,与用户交互的公共方式,或者为贡献者提供托管自己项目的方法. GitLab项目使用简单的安装机制在您自己的硬件上设置GitLab实例变得相对简单.在本指南中,我们将介绍如何在阿里云Ubuntu 20.04服务器上安装和配置GitLab. 前提条件 部署GitLab的实例要求至少

  • Eclipse开发JavaWeb项目配置Tomcat的方法步骤

    以下都经过本人自学时一一自己动手配置实验. 首先介绍eclipse开发JavaWeb项目需要配置的相关环境,使用tomcat软件在本地搭建服务器,然后再在eclipse环境下配置tomcat: 第一步:使用tomcat软件在本地搭建服务器 这个本地的tomcat服务器与eclipse环境下配置tomcat服务器都可以使用,但是只能启动一个,否则会报端口冲突,到时安装好环境会介绍 tomcat软件是apache旗下的一个开源项目.软件下载链接:http://tomcat.apache.org/,如

  • Mac+IDEA+Tomcat配置的的方法步骤

    目录 一:下载 二,安装.解压 三,启动Tomcat 四,验证安装是否成功 五,关闭Tomcat 六,IDEA配置tomcat 一:下载 打开Apache Tomcat官网,选择需要的版本下载: 二,安装.解压 解压到本地路径,本人放到了/user/计算机名/目录下 三,启动Tomcat 进入到上面图中的bin目录终端运行脚本./startup.sh 如果出现: -bash: ./startup.sh: Permission denied 是因为用户没有权限,而导致无法执行.需要用命令chmod

  • docker安装nginx并配置ssl的方法步骤

    最近想在吃灰了一年多的服务器上,安装一下docker,结果始终找不到合适的yum源,后来经过一番百度才知道,原来centos8要凉了,所以好多镜像站都移除了CentOS 8的源. 没办法,短暂的思考之后,决定重装一下操作系统,换成centos7.9,好在服务器上没啥重要东西,只要给blog挪个窝就行了. 重装系统之后,安装docker过程非常顺利. 开始安装nginx. 1.直接拉取最新的nginx镜像 docker pull nginx 2.新建一些目录,把nginx容器内的相关文件夹挂载到宿

随机推荐