详解Spring3.x 升级至 Spring4.x的方法

时间:2021-12-14 23:32:58

1 升级依赖包

1.1 maven 项目

1.1.1 更新 spring 依赖版本

打开 pom.xml,把所有 spring3.x 的版本号更新为 spring4.x。建议使用属性配置,形如:

?
1
2
3
<properties>
    <spring.version>4.3.16.release</spring.version>
 </properties>

这样就仅需一处升级即可,引用方式如下:

?
1
2
3
4
5
6
<dependency>
  <groupid>org.springframework</groupid>
  <artifactid>spring-core</artifactid>
  <version>${spring.version}</version>
</dependency>
...

1.1.2 升级 quartz

quartz 1.x 升级为 quartz 2.x:

?
1
2
3
4
5
<dependency>
 <groupid>org.quartz-scheduler</groupid>
 <artifactid>quartz</artifactid>
 <version>2.3.0</version>
</dependency>

quartz 配置文件中的 org.springframework.scheduling.quartz.crontriggerbean 改为 org.springframework.scheduling.quartz.crontriggerfactorybean

1.1.3 升级 jackson

jackson 版本升级为 2.9.4:

?
1
<jackson.version>2.9.4</jackson.version>

1.2 非 maven 项目

非 maven 的项目,要更新为 spring4.x,过程比较痛苦,因为需要手动把相应的 jar 包替换掉。

下面贴出可能涉及到、需要被替换掉的 jar 包:

详解Spring3.x 升级至 Spring4.x的方法

quartz 相关

详解Spring3.x 升级至 Spring4.x的方法

jackson 相关

详解Spring3.x 升级至 Spring4.x的方法

spring 相关

2 替换 spring jdbc 的 queryforint 方法

queryforint 方法已被弃用,请改为 queryforobject 方法:

?
1
queryforobject(string sql, map<string, ?> parammap, class<t> requiredtype)

调用示例:

复制代码 代码如下:
int count=namedparameterjdbctemplate.queryforobject(sql,params, integer.class);

 

3 springmvc 返回 json 格式

原来在 spring3 中默认会返回 json 格式,然而在 spring4 中可能会默认返回 xml 格式:

详解Spring3.x 升级至 Spring4.x的方法

响应消息格式

如果这里的响应消息格式变为 application/xml;charset=utf-8,那么可以在 controller 中的 @requestmapping 中加入 produces = "application/json" ,明确指定返回 json 格式。

示例:

 

复制代码 代码如下:
@requestmapping(value = "/login", method = requestmethod.post, produces = "application/json")

 

4 更新 xml 配置文件中的 xsd 版本号

把格式为 http://www.springframework.org/schema/xxx/spring-xxx-3.0.xsd 更改为 http://www.springframework.org/schema/xxx/spring-xxx-4.0.xsd ,如果有的话。

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

原文链接:https://www.jianshu.com/p/e52a7476ae95