Spring3.x升级到Spring4.x遇到的问题及解决

Posted callmejuxiezuo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring3.x升级到Spring4.x遇到的问题及解决相关的知识,希望对你有一定的参考价值。

原来项目使用的是Spring3.x+jdk6,现今升级到了Spring4.x+jdk8,下面就我在升级过程中遇到的问题做个分享。

我升级到的Spring版本版本是:

1 <dependency>
2    <groupId>org.springframework</groupId>
3    <artifactId>spring-context</artifactId>
4    <version>4.3.14.RELEASE</version>
5 </dependency>

1.如果由使用到了SpringMVC的话,和json相关的依赖就需要升级了

1 <dependency>
2    <groupId>com.alibaba</groupId>
3    <artifactId>fastjson</artifactId>
4    <version>1.2.45</version>
5 </dependency>

增加依赖:

 1 <dependency>
 2     <groupId>com.fasterxml.jackson.core</groupId>
 3     <artifactId>jackson-annotations</artifactId>
 4     <version>2.9.3</version>
 5 </dependency>
 6 <dependency>
 7     <groupId>com.fasterxml.jackson.core</groupId>
 8     <artifactId>jackson-core</artifactId>
 9     <version>2.9.3</version>
10 </dependency>
11 <dependency>
12     <groupId>com.fasterxml.jackson.core</groupId>
13     <artifactId>jackson-databind</artifactId>
14     <version>2.9.3</version>
15 </dependency>

servlet.xml改写:

<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">

改为:

<bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">

 

2.Spring4.x写法的改变

<ref local="xxx" />  改为  <ref bean="xxx" />
即local  改为  bean

 

3.在Spring 3.2.2之后,jdbctemplate中的 (@Deprecated)queryForInt()  已经被取消了,所以得改成queryForObject() 。

 

4.如果是JDK6变成JDK8的话(Spring4.x向下兼容到6,推荐使用7或8),那么别忘记改编译器到相应的版本,eclipse有多种改法,我列出一种(说起来也丢人,这种方式我最近才知道的):

   在eclipse界面的工程中右击Properties-ProjectFacts-修改java版本,通常的编译版本是java1.6,改成java1.8即可,Apply后自动编译,有些人说要重启生效,我好像是即时的,不知道是不是我

  eclipse版本比较高的原因(Version: Luna Service Release 2 (4.4.2))

 

5.spring升级到4.x后,orm包里面移除了对ibatis的支持,所以有几种方式可以解决

A.升级到mybatis(成本充足可以选择,毕竟以后还是得升级到mybatis的)

B.Spring-orm包不升级,依旧使用Spring3.x

C.Spring-orm升级到4.x,增加以下依赖

1 <dependency>
2     <groupId>org.mybatis</groupId>
3     <artifactId>mybatis-2-spring</artifactId>
4     <version>1.0.3</version>
5 </dependency> 

 

后续测试过程中如果发现其他问题,再补充。

 

以上是关于Spring3.x升级到Spring4.x遇到的问题及解决的主要内容,如果未能解决你的问题,请参考以下文章

Spring3.x企业应用开发实战1.环境搭建

Spring4.3.x版本使用的积累性更新

Maven - 强制使用依赖

spring4.x的一些新特性

《Spring5官方文档》新功能(4,3)

Not found org.springframework.http.converter.json.MappingJacksonHttpMessageConverter