欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-11-20 20:37:16
1 升级依赖包 1.1 maven 项目 1.1.1 更新 spring 依赖版本 打开 pom.xml,把所有 spring3.x 的版本号更新为 spring4....

1 升级依赖包

1.1 maven 项目

1.1.1 更新 spring 依赖版本

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

<properties>
    <spring.version>4.3.16.release</spring.version>
 </properties>

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

<dependency>
  <groupid>org.springframework</groupid>
  <artifactid>spring-core</artifactid>
  <version>${spring.version}</version>
</dependency>
...

1.1.2 升级 quartz

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

<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:

<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 方法:

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 ,如果有的话。

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