pom.xml
升级对应的其他组件版本,以配合spring的新版本,具体看maven中的版本对应关系
<!-- 修改定时器的版本 -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
<!-- 新增 xstream xml -->
<dependency>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
<version>${xstream.version}</version>
</dependency>
<!-- spring mvc中如果过返回json需要依赖jackson的jar包,但是他升级到了2, 以前是codehaus.jackson,现在换成了fasterxml.jackson ,之前有很多地方都用了codehaus,并且升级成fasterxml之后,很多的方法和入参都发生了很大的改变,为了不影响原本的性能,两个jar包都导入-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.8.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jaxb-annotations</artifactId>
<version>2.8.3</version>
</dependency>
<!-- 修改spring,springsercurity,httpclient的版本 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring.framework.version>4.3.3.RELEASE</spring.framework.version>
<spring.security.version>4.1.3.RELEASE</spring.security.version>
<velocity.version>1.7</velocity.version>
<mybatis.version>3.2.1</mybatis.version>
<jackson.version>1.9.12</jackson.version>
<httpclient.version>4.5.2</httpclient.version>
<cxf.version>2.7.10</cxf.version>
<sun.mail.version>1.5.1</sun.mail.version>
<apache.poi.version>3.11</apache.poi.version>
<xstream.version>1.4.7</xstream.version>
</properties>
applicationContext.xml
修改spring的配置文件
<!-- 1
上面这个类在4.3.3中已经没有了org.springframework.http.converter.json.MappingJacksonHttpMessageConverter
用:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter -->
<!--2, 取消了SimpleTriggerBean,改用:
org.springframework.scheduling.quartz.SimpleTriggerFactoryBean -->
<bean id="cacheInitTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<!-- see the example of method invoking job above -->
<property name="jobDetail" ref="cacheInit" />
<!-- repeat every 5 minute -->
<property name="repeatInterval" value="300000" />
</bean>
<bean id="cacheInitTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<!-- see the example of method invoking job above -->
<property name="jobDetail" ref="cacheInit" />
<!-- repeat every 5 minute -->
<property name="repeatInterval" value="300000" />
</bean>
<!--3, 取消了CronTriggerBean,改用:
org.springframework.scheduling.quartz.CronTriggerFactoryBean -->
<bean id="sendSMSTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<!-- 触发器触发的 执行定时任务的bean -->
<property name="jobDetail" ref="sendSMSTask" />
<!--延迟10s -->
<property name="startDelay" value="10000" />
<property name="cronExpression">
<value>0 0 12 * * ?</value>
</property>
</bean>
<bean id="sendSMSTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<!-- 触发器触发的 执行定时任务的bean -->
<property name="jobDetail" ref="sendSMSTask" />
<!--延迟10s -->
<property name="startDelay" value="10000" />
<property name="cronExpression">
<value>0 0 12 * * ?</value>
</property>
</bean>
<!--4, 取消了local,改用bean:cvc-complex-type.3.2.2: Attribute 'local' is not allowed to appear in element 'ref'.
解决:在4.3中,ref已经取消了local,只有Parent了-->
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<!-- 普通触发器 :触发器列表 -->
<property name="triggers">
<list>
<ref local="cacheInitTrigger" />
<ref local="submitReviewAuditTaskTrigger" />
<ref local="submitReviewQueryTaskTrigger" />
<ref local="sendSMSTaskTrigger" />
<ref local="signServiceUserTaskTrigger" />
<ref local="signServiceQueryTaskTrigger" />
<ref local="invoiceTaskTrigger" />
<ref local="sendEmailTaskTrigger" />
</list>
</property>
</bean>
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<!-- 普通触发器 :触发器列表 -->
<property name="triggers">
<list>
<ref bean="cacheInitTrigger" />
<ref bean="submitReviewAuditTaskTrigger" />
<ref bean="submitReviewQueryTaskTrigger" />
<ref bean="sendSMSTaskTrigger" />
<ref bean="signServiceUserTaskTrigger" />
<ref bean="signServiceQueryTaskTrigger" />
<ref bean="invoiceTaskTrigger" />
<ref bean="sendEmailTaskTrigger" />
</list>
</property>
</bean>
- applicationContext-security.xml
springsecurity的配置文件
<!--1, 命名空间的版本,不引用具体版本的号的话,会自动引用最新的稳定版-->
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd">
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd">
<!--2, 添加以下条件,因为升级新版本之后,springsecuriy的安全配置发生了一些新改变,不配置的话,可能查看缩略图或者点击查看大图片会出现乱码-->
<csrf disabled="true" />
<headers>
<frame-options policy="SAMEORIGIN" />
<content-type-options disabled="true" />
</headers>
- webmvc-config.xml,springmvc的配置文件
<!--1, 修改版本号-->
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.3.xsd">
<!--2,修改MappingJacksonHttpMessageConverter为MappingJackson2HttpMessageConverter-->
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean
class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
<property name="supportedMediaTypes" value="text/html;charset=UTF-8"></property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="supportedMediaTypes" value="text/html;charset=UTF-8"></property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>