Spring3 升级Spring 4

周末加班,想把spring3升级到spring4。 列一下遇到的坑

更换spring版本为

4.2.3

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.2.3.RELEASE</version>
</dependency>

加入spring support:

3中很多的扩展内容不需要引入support,但是4中分离的更彻底了,如果不分离,会很多ClassNotFound

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>4.2.3.RELEASE</version>
</dependency>

更换springmvc jackson依赖

spring mvc中如果过返回json需要依赖jackson的jar包,但是他升级到了2, 以前是codehaus.jackson,现在换成了fasterxml.jackson

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.7.0</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.7.0</version>
</dependency>

同时修改spring mvc的配置文件:

<bean
        class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
        <property name="messageConverters">
            <list>
                 <ref bean="stringHttpMessageConverter" />
                <bean
                    class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                </bean>
            </list>
        </property>
    </bean>

    <bean id="stringHttpMessageConverter"
        class="org.springframework.http.converter.StringHttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
                <value>text/plain;charset=UTF-8</value>
            </list>
        </property>
    </bean>

修改Spring配置文件的xsd

修改Spring使用的quartz

<dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz</artifactId>
                <version>2.2.2</version>
            </dependency>

同时修改quartz的配置文件:

<bean id="lctWorkTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
        <property name="jobDetail">
            <bean class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                <!-- 调用的类 -->
                <property name="targetObject">
                    <ref bean="pushMessageWork" />
                </property>
                <!-- 调用类中的方法 -->
                <property name="targetMethod">
                    <value>work</value>
                </property>
            </bean>
        </property>
        <!-- cron表达式 -->
        <property name="cronExpression">
            <value>0/30 * * * * ?</value>
        </property>
    </bean>

    <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 -->
    <bean id="startQuertz" lazy-init="false" autowire="no"
        class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
                <ref bean="lctWorkTrigger" />
            </list>
        </property>
    </bean>
时间: 2024-08-30 13:47:34

Spring3 升级Spring 4的相关文章

dubbox升级spring到4.x及添加log4j2支持

今天花了点时间,把dubbox依赖的spring从3.x升级成最新版的4.x了,其它一些依赖的组件也顺带升级了,同时dubbo支持的第三方日志组件居然没有log4j2,加了点代码也一并支持了,蛋疼的是依赖的zkclient,这个项目太不讲究了,里面N多代码硬编码写死依赖log4j,于是把这个项目也改了下,全部改成依赖slf4j了,方便以后更换其它兼容slf4j-api的日志组件. 1.zkclient的修改版本,已提交至https://github.com/yjmyzz/zkclient (版本

Spring MVC exception - Invoking request method resulted in exception : public static native long java.lang.System.currentTimeMillis()

最近在线上系统发现下面的异常信息: 2014-10-11 11:14:09 ERROR [org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerExceptionResolver.doResolveException(143)]- Invoking request method resulted in exception : public static native long java.lang.System.

Struts2.3.28.1升级后action中实体Bean第一个字母小写 第二字母大写

问题描述 Struts2.3.28.1升级后action中实体Bean第一个字母小写 第二字母大写 我将 Struts升级至2.3.28.1后,action中实体Bean第一个字母小写 第二字母大写的情况后台获取值为null如:UserAction中有 private User user; 在User:private String uName; public String getUName() { return uName; } public void setUName(String uName

《Spring MVC学习指南(第2版)》——第1章 Spring框架 1.1XML配置文件

第1章 Spring框架 Spring框架是一个开源的企业应用开发框架,作为一个轻量级的解决方案,它包含20多个不同的模块.本书主要关注Core.Spring Bean.Spring MVC和Spring MVC Test模块. 本章主要介绍Core和Spring Bean这两个模块,以及它们如何提供依赖注入解决方案.为方便初学者,本书会深入讨论依赖注入概念的细节.后续介绍开发MVC应用的章节将会使用到本章介绍的技能. 依赖注入 简单来说,依赖注入的情况如下. 有两个组件A和B,A依赖于B.假定

Java环境中MyBatis与Spring或Spring MVC框架的集成方法_java

与Spring3集成Spring作为基础框架,可以集成后端框架,如Hibernate,MyBatis等. 前面是介绍单独使用MyBatis的,大致逻辑是: sqlSessionFactory <- configuration file (包括数据库连接配置) IXxxMapper <- sqlSession <- sqlSessionFactory                      <- mapper interface <- mapper xml 得到IxxMapp

漏洞预警:Spring Boot框架表达式注入漏洞

高危漏洞的曝光总是发生在意想不到的时刻:周末所有人都准备享受周末的时间,Spring Boot框架的SpEL表达式注入通用漏洞曝光,利用该漏洞,远程攻击者在服务器上可执行任意命令--该漏洞影响Spring Boot版本从1.1-1.3.0,建议在使用存在此缺陷版本Spring Boot的企业立即将之升级至1.3.1或以上版本. 具体的漏洞预警报告如下: 影响范围:Spring Boot版本1.1-1.3.0 修复方案:升级Spring Boot版本至1.3.1或以上版本 Spring是2003年

Spring IO Platform

转自:spring io 平台介绍 Spring IO Platform reference对Spring IO的介绍如下: Spring IO Platform is primarily intended to be used with a dependency management system. It works well with both Maven and Gradle. 具体如何理解Spring IO Platform 的作用了? 以前在升级Spring项目的时候是手动的一个一个升

spring boot 2.0之使用spring boot

spring boot依赖 每一个spring boot的发型版本都包含了所依赖的版本,如果升级spring boot版本,其依赖也会同步更新升级.maven的用户可以通过继承spring-boot-starter-parent.其包含了一些合理的值的设置: 1. 默认设置的编译器为JDK 1.8 2. 源文件默认UTF-8编码 3. 从spring-boot-dependencies pom中继承的 Dependency Management 版本信息,在使用的时候,可以忽略其具体的版本信息.

基于资源编排在专有网络环境下快速部署高可用的Dubbox服务(ZooKeeper版)

本文将介绍在专有网络VPC(Virtual Private Cloud)下,基于资源编排服务,快速部署高可用的Dubbox服务的过程.Dubbox服务采用的注册中心是ZooKeeper集群.做这件事情的意义在于:节约部署Dubbox的时间,降低部署Dubbox过程中出错的风险. ROS阿里云资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务.用户通过模板描述多个云计算资源的依赖关系.配置等,并自动完成所有资源的创建和配置,以达到自动化部署.运维