问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

有了maven还用配置spring吗

发布网友 发布时间:2022-05-05 00:28

我来回答

1个回答

热心网友 时间:2022-06-27 18:57

在Maven中Spring的基础配置

Spring是高度模块化的,可以单独使用Spring的某个库而不需要依赖Spring的其他库。比如,使用Spring Context库不需要依赖Spring Persistence或者Spring MVC库。
让我们先从最简单开始,在Maven中配置spring-context依赖:

1
2
3
4
5
6
7
8
9
10

<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-context实现了Spring注入容器并且依赖:spring-core,spring-expression,spring-aop以及spring-beans。这些依赖包使容器可以支持Spring的一些核心技术:Spring核心组件,Spring EL表达式 (SpEL), 面向切面编程,JavaBean机制。

注意,在runtime范围定义这个依赖,因此需求确定在编译期间不需要依赖相关Spring特定的API。在一些高级应用场景下,一些Spring依赖项可以不用配置runtime范围,但是在目前比较简单的项目场景下,不需要针对Spring编译项目去获得整个框架的全部功能。

同样要注意的是,从Spring 3.2开始不需要定义CGLIB依赖(目前的版本是CGLIB 3.0)。现在使用内嵌在spring-core JAR(更多详细信息可以查看相关[JIRA]https://jira.springsource.org/browse/SPR-9669("JIRA")中的cglib包(net.sf.cglib现在使用org.springframework.cglib替代)。

在Maven配置Spring持久化框架
现在来看看Spring持久化框架的配置(主要是spring-orm)

1
2
3
4
5

<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文件中额外增加两个依赖:

1
2
3
4
5
6
7
8
9
10

<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所需要通用组件,spring-webmvc则在Servlet环境中启用MVC支持。

由于spring-webmvc依赖于spring-web,所以定义了spring-webmvc依赖后,可以不用显示的在pom定义spring-web。

在Maven中配置Spring Test

可以通过下面的依赖配置将Spring Test引入项目

1
2
3
4
5
6

<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框架中(原来是一个独立项目,项目托管在GitHub)。所以,从Spring 3.2开始,仅需要在依赖配置中配置spring-test依赖即可。

注意:对于使用Spring 3.1及以下版本的应用来说,独立的spring-mvc-test依赖还是可以使用的,可以参考这里进行配置。但是,这个依赖已经不再Maven的*库中,所以如果需要增加依赖需要配置自定义Maven容器。

7. 使用Milestones(里程碑)版本
Spring的最新稳定版本保存在Maven的*库,如果项目需要使用Spring的里程碑版本,需要在pom中配置自定义容器:

1
2
3
4
5
6
7

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

当容器配置完成后,项目就可以像下面示例一样定义依赖了:

1
2
3
4
5

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

8. 使用Snapshots(快照)版本
与里程碑版本一样,快照版本也需要配置自定义容器位置:

1
2
3
4
5
6
7

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

当快照容器位置配置完成后,下面的依赖配置就可以使用了:

1
2
3
4
5

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

对于4.x版本也是一样的:

1
2
3
4
5

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.0.3.BUILD-SNAPSHOT</version>
</dependency>
使用Maven进行项目管理如何与spring进行集成

不存在maven和spring集成的问题,一个是构建管理工具,一个是java框架,完全风马牛不相及。spring使用注解可以减少配置,一般现在都是用注解。

mvc和springboot的区别(springboot与mvc区别)

1、SpringBoot:可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;内嵌Tomcat或Jetty等Servlet容器;尽可能自动配置Spring容器。2、MVC框架:耦合性低、重用性高、生命周期成本低、部署快、可维护性高、有利软件工程化管理。参考资料来源:百度百科-MVC框架 百度百科-...

maven的starter和springboot自动装配有什么关系?

依存关系,因为springboot定义了自动装配的一套规范写法。然后官方根据这一套规范,将不同的场景(类库)封装起来。最后交给maven来统一管理。一个空的springboot项目,自动装载了一些基础bean(servlet,ioc,aop。。。),定义了一些场景的版本,但是不会装载具体场景的bean,针对不同业务使用不同的场景,...

spring 和springboot的区别

尽可能的自动化配置Spring功能。 三、Spring与SpringBoot的比较 3.1 Maven依赖 首先,让我们看一下使用Spring创建Web应用程序所需的最小依赖项: &lt;dependency&gt; &lt;groupId&gt;org.springframework&lt;/groupId&gt; &lt;artifactId&gt;spring-web&lt;/artifactId&gt; &lt;version&gt;5.1.0.RELEASE&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;o...

Spring+Boot整合MyBatis的逆向工程需要在pom文件中配置相应的依赖是...

是的,如果你想要在Spring Boot项目中使用MyBatis逆向工程,你需要在pom.xml文件中配置相应的依赖。以下是一些常见的依赖配置:首先,你需要添加MyBatis相关的依赖:xml复制代码&lt;dependency&gt; &lt;groupId&gt;org.mybatis.spring.boot&lt;/groupId&gt; &lt;artifactId&gt;mybatis-spring-boot-starter&lt;/artifactId&gt; &lt;version&gt;2...

如何在Maven中配置Spring依赖

在Maven中Spring的基础配置 Spring是高度模块化的,可以单独使用Spring的某个库而不需要依赖Spring的其他库。比如,使用Spring Context库不需要依赖Spring Persistence或者Spring MVC库。让我们先从最简单开始,在Maven中配置spring-context依赖:&lt;properties&gt; &lt;org.springframework.version&gt;3.2.8.RELEASE&lt;/o...

springboot可以代替spring吗(springboot代替了什么)

可以直接main函数启动,嵌入式web服务器,避免了应用程序部署的复杂性,Metrics度量,Helthcheck健康检查和外部化配置。 尽可能的自动化配置Spring功能。 三、Spring与SpringBoot的比较 3.1Maven依赖 ?首先,让我们看一下使用Spring创建Web应用程序所需的最小依赖项: dependency ?groupIdorg.springframework/groupId ?artifact...

maven是基于spring框架吗

Spring AOP:通过配置管理特性,Spring AOP 模组直接将面向方面的程式设计功能整合到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何物件支援 AOP。Spring AOP 模组为基于 Spring 的应用程式中的物件提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 元件,就可以将宣告性事务管理整合...

...Boot 2.7开始spring.factories不推荐使用了,接下来这么玩..._百...

如果你是Spring Boot用户的话,一定有这样的开发体验,当我们要引入某个功能的时候,只需要在maven或gradle的配置中直接引入对应的Starter,马上就可以使用了,而不需要像传统Spring应用那样写个xml或java配置类来初始化各种Bean。如果你有探索过这些Starter的原理,那你一定知道Spring Boot并没有消灭这些原本...

springboot的缺点(springboot有什么优点)

SpringBoot还简化了Maven的配置,导入SpringBoot的starter架包就可以把对应的依赖包都导入到项目中,很方便,不用去考虑版本兼容。SpringBoot还内嵌了tomcat,可以以jar包的形式独立运行。它的缺点是,由于不用自己做配置,报错的时候很难去定位。SpringBoot实现自动配置主要是依靠@SpringBootApplication这个注解...

eclipse maven配置 eclipse如何配置maven eclipse配置maven项目 eclipse配置maven环境 maven和springmvc maven搭建springmvc idea怎么配置maven maven spring maven与spring的关系
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米6X怎么把应用转到分身里去。 电脑开机时风扇都能转,就是显示屏显示无视屏输入。重启也没有用 我的电脑开机后只有风扇会转其它都没反应这是怎么回事 二十岁了女生还可以长高吗求大神帮助 二十岁了 还有可能长高吗?有什么方法??? ...说玛卡巴卡的意思 男生说晚安玛卡巴卡是什么意思 男生发晚安玛卡巴卡什么意思 法式碎花裙怎样搭配才能展现出优雅知性的美感? 早秋有哪些随性慵懒的法式风穿搭思路值得借鉴? 法式风格的红裙如何搭配才能凸显出高级感? jira 中 task 和 story 什么关系 请问万科魅力之城在哪里? jira可以查看历史sprint吗 jira上开启sprint之后可以创建子任务吗?会影响sprint时间吗? 第一次和女生去看电影,应该做些什么呢? jira如何export整个sprint 第一次和男的约会,我穿可爱型的??还是穿性感型的?? 第一次约会的技巧女生应该注意什么 和男朋友第一次,晚上穿什么性感?(我帮我姐问的,她害羞) 万科大溪谷属于哪个区哪个镇? 第一次穿文胸该穿四分之三杯还是二分之一杯 和男朋友第一次嘚时候穿什么样嘚内衣 第一次穿*睡衣,感觉自己提醒好棒。穿暴露衣服上街,是不是会被别人觉得很没素质? 第一次穿内衣 solidworks具有plm功能模块吗 SolidWorks2008宝典的内容简介 solidworks哪些模块比较常用 a开头的英文歌,歌名就一个单词,副歌部分是连续三遍歌名然后love is always love 一首英文歌 好像是男女合唱的 好几年前了 中间有段节奏特别好听 记得是a开头的 好像是个单词 求一首英文歌a开头是搭啦滴啦男女合唱的欧美的 引入mavenspring-aspects依赖为什么启动服务器失败 为什么中国人没有络腮胡? 我看很多男性都有络腮胡很有男人味为什么我就不长 我家族内外亲都没有络腮大胡子,我爸也没有为什么就我有呢?? 怎么让自己有络腮胡 本来没有络腮胡,为何理发刮多了就会有络腮胡? 《隐婚:神秘老公甩不掉》txt下载在线阅读全文,求百度网盘云资源 《隐婚老公很神秘》txt下载在线阅读全文,求百度网盘云资源 请问怎么知道自己是不是络腮胡? 父母都没有络腮胡我却有为什么 为什么我不长络腮胡子??? 家里没有络腮胡子自己怎么有 父母没有络腮胡,但我却有迹象,怎么回事 隐婚独宠:神秘老公,有点冷好看吗 隐婚独宠:神秘老公,有点冷怎么样 没有络腮胡怎么办? 为什么中国人有络腮胡的人很少 《隐婚专宠:帝少,花式撩!》txt下载在线阅读全文,求百度网盘云资源 干嘛 我有络腮胡啊 怎么才能不长啊??? 郑天亮隐婚16年不公开,她的神秘老公究竟是谁? 跳绳跳不快