spring版本升级到4.x踩雷指南

spring版本升级到4.X踩雷指南

   点关注不迷路,欢迎再访!	

精简博客内容,尽量已行业术语来分享。
努力做到对每一位认可自己的读者负责。
帮助别人的同时更是丰富自己的良机。

一、新特性介绍

Spring 4 相比 Spring 3,引入许多新特性,这里列举几条较为重要的:
1.支持 JDK8 (这个是最主要的)。
2.Groovy Bean Definition DSL 风格配置。
3.支持 WebSocket、SockJS、STOMP 消息
4.移除 Deprecated 包和方法
5.一些功能加强,如:核心容器、Web、Test 等等,不一一列举。

二.引入依赖
<!-- spring -->
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-beans</artifactId>
       <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-core</artifactId>
       <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-aop</artifactId>
     <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-web</artifactId>
      <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-webmvc</artifactId>
       <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-jdbc</artifactId>
       <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-aspects</artifactId>
      <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
      <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-test</artifactId>
       <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-context-support</artifactId>
        <version>4.2.5.RELEASE</version>

</dependency>
<dependency>
       <groupId>org.springframework</groupId>
       <artifactId>spring-orm</artifactId>
       <version>4.2.5.RELEASE</version>
</dependency>
<dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-core</artifactId>
      <version>4.2.2.RELEASE</version>
</dependency>
<dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-config</artifactId>
      <version>4.2.2.RELEASE</version>
</dependency>
<dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-web</artifactId>
      <version>4.2.2.RELEASE</version>
 </dependency>
<dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-taglibs</artifactId>
      <version>4.2.2.RELEASE</version>
</dependency>
三.踩雷指南

1.业务项目多数使用的iBATIS
iBATIS 2.x support was removed from Spring in version 4.0 but there is a workaround for that
ibatis (mybatis 的前身)这个 orm 框架,当 spring3 升级 spring4 后,会出现兼容性问题,编译都不能通过。
因为 Spring4 官方已经不再支持 ibatis。
解决方案:
添加兼容性jar

<dependency>
       <groupId>org.mybatis</groupId> 
       <artifactId>mybatis-2-spring</artifactId> 
      <version>1.0.1</version> 
</dependency>

2.security升级问题
建议最后升级spring-security,security3和security4改动较大,spring 4.2.5向下兼容security 3.2.9; ,如有需要更新可升级security至4.2.2。
3.spring.xml问题
spring 不再支持 ref 元素的 local 属性,如果你的项目中使用了,需要改为 bean。举例:
spring4以前

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 
       <property name="dataSource"> <ref local="dataSource" /> 
        </property>
</bean>

spring4以后

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 
        <property name="dataSource"> <ref bean="dataSource" /> 
        </property> 
</bean>
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值