SSM集成Quartz RAM方式(Oracle数据源)
2018-03-02 09:23
477 查看
一.Maven配置依赖包
![](https://img-blog.csdn.net/20180302090807395?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzM5OTY0NTYy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz-jobs</artifactId>
<version>2.2.1</version>
</dependency>
二.设置Job
![](https://img-blog.csdn.net/20180302091158794?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzM5OTY0NTYy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
public class MyQuartzTask{
//简单触发器运行的任务
public void doSimpleTask(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("doSimpleTask正在运行..."+sdf.format(new Date()));
}
//cron任务触发器运行的任务
public void doCronTask(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("doCronTask正在运行..."+sdf.format(new Date()));
}
}
三.Spring添加配置文件
1.web.xml 增加配置文件读取
![](https://img-blog.csdn.net/20180302091623688?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzM5OTY0NTYy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
2.新增配置文件spring-quartz.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!--注入任务处理类bean -->
<bean id="quartzTask" class="com.kh_cd_se_1701.service.task.quartz.MyQuartzTask"></bean>
<!-- 1.简单触发器任务详细信息bean -->
<bean id="myJobDetail1" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 设置任务执行对象 -->
<property name="targetObject" ref="quartzTask"></property>
<!-- 设置任务执行对象中对应的执行方法 -->
<property name="targetMethod" value="doSimpleTask"></property>
<!-- 设置任务是否可并发执行,默认为不并发 -->
<property name="concurrent" value="false"></property>
</bean>
<!-- 2.任务触发器详细信息bean -->
<bean id="myJobDetail2" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 设置任务执行对象 -->
<property name="targetObject" ref="quartzTask"></property>
<!-- 设置任务执行对象中对应的执行方法 -->
<property name="targetMethod" value="doCronTask"></property>
<!-- 设置任务是否可并发执行,默认为不并发 -->
<property name="concurrent" value="false"></property>
</bean>
<!-- 2.制定简单触发器 -->
<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<!-- 设置任务详细信息 -->
<property name="jobDetail" ref="myJobDetail1"></property>
<!-- 设置延迟1秒开始执行,自己看情况 -->
<property name="startDelay" value="1000"></property>
<!-- 设置任务执行间隔,本人设置2秒执行一次 -->
<property name="repeatInterval" value="2000"></property>
<property name="repeatCount" value="3"/>
</bean>
<!-- 2.任务触发器 -->
<bean id="cronTrigger2" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<!-- 设置任务详细信息 -->
<property name="jobDetail" ref="myJobDetail2"></property>
<!-- 设置quartz任务执行表达式 ,每隔三秒执行一次任务-->
<property name="cronExpression" value="0/3 * * * * ?"></property>
</bean>
<!-- 2.2:定义触发器的bean,定义一个Cron的Trigger,一个触发器只能和一个任务进行绑定 -->
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<!-- 指定Trigger的名称 -->
<property name="name" value="hw_trigger"/>
<!-- 指定Trigger的名称 -->
<property name="group" value="hw_trigger_group"/>
<!-- 指定Tirgger绑定的Job -->
<property name="jobDetail" ref="hwJob"/>
<!-- 指定Cron 的表达式 ,当前是每隔1s运行一次 -->
<property name="cronExpression" value="0/1 * * * * ?" />
</bean>
<!-- 设置触发器调度工厂 -->
<bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<!-- 触发器调度工厂调度简单触发器 -->
<ref bean="simpleTrigger"/>
<!--<ref bean=""> 多个触发器可以这样配置-->
<!-- 触发器调度工厂调度简单触发器 -->
<ref bean="cronTrigger2"/>
</list>
</property>
</bean>
</beans>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz-jobs</artifactId>
<version>2.2.1</version>
</dependency>
二.设置Job
public class MyQuartzTask{
//简单触发器运行的任务
public void doSimpleTask(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("doSimpleTask正在运行..."+sdf.format(new Date()));
}
//cron任务触发器运行的任务
public void doCronTask(){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("doCronTask正在运行..."+sdf.format(new Date()));
}
}
三.Spring添加配置文件
1.web.xml 增加配置文件读取
2.新增配置文件spring-quartz.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!--注入任务处理类bean -->
<bean id="quartzTask" class="com.kh_cd_se_1701.service.task.quartz.MyQuartzTask"></bean>
<!-- 1.简单触发器任务详细信息bean -->
<bean id="myJobDetail1" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 设置任务执行对象 -->
<property name="targetObject" ref="quartzTask"></property>
<!-- 设置任务执行对象中对应的执行方法 -->
<property name="targetMethod" value="doSimpleTask"></property>
<!-- 设置任务是否可并发执行,默认为不并发 -->
<property name="concurrent" value="false"></property>
</bean>
<!-- 2.任务触发器详细信息bean -->
<bean id="myJobDetail2" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 设置任务执行对象 -->
<property name="targetObject" ref="quartzTask"></property>
<!-- 设置任务执行对象中对应的执行方法 -->
<property name="targetMethod" value="doCronTask"></property>
<!-- 设置任务是否可并发执行,默认为不并发 -->
<property name="concurrent" value="false"></property>
</bean>
<!-- 2.制定简单触发器 -->
<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<!-- 设置任务详细信息 -->
<property name="jobDetail" ref="myJobDetail1"></property>
<!-- 设置延迟1秒开始执行,自己看情况 -->
<property name="startDelay" value="1000"></property>
<!-- 设置任务执行间隔,本人设置2秒执行一次 -->
<property name="repeatInterval" value="2000"></property>
<property name="repeatCount" value="3"/>
</bean>
<!-- 2.任务触发器 -->
<bean id="cronTrigger2" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<!-- 设置任务详细信息 -->
<property name="jobDetail" ref="myJobDetail2"></property>
<!-- 设置quartz任务执行表达式 ,每隔三秒执行一次任务-->
<property name="cronExpression" value="0/3 * * * * ?"></property>
</bean>
<!-- 2.2:定义触发器的bean,定义一个Cron的Trigger,一个触发器只能和一个任务进行绑定 -->
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<!-- 指定Trigger的名称 -->
<property name="name" value="hw_trigger"/>
<!-- 指定Trigger的名称 -->
<property name="group" value="hw_trigger_group"/>
<!-- 指定Tirgger绑定的Job -->
<property name="jobDetail" ref="hwJob"/>
<!-- 指定Cron 的表达式 ,当前是每隔1s运行一次 -->
<property name="cronExpression" value="0/1 * * * * ?" />
</bean>
<!-- 设置触发器调度工厂 -->
<bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<!-- 触发器调度工厂调度简单触发器 -->
<ref bean="simpleTrigger"/>
<!--<ref bean=""> 多个触发器可以这样配置-->
<!-- 触发器调度工厂调度简单触发器 -->
<ref bean="cronTrigger2"/>
</list>
</property>
</bean>
</beans>
相关文章推荐
- oracle到mysql的导数据方式(适用于任意数据源之间的互导)
- oracle以datasource数据源方式配置jdbc遇到的问题
- oracle到mysql的导数据方式(适用于任意数据源之间的互导)
- oracle到mysql的导数据方式(适用于任意数据源之间的互导)
- Tomcat配置数据源(JNDI方式)&JDBC(与Oracle的连接)
- oracle到mysql的导数据方式(适用于任意数据源之间的互导)
- Spring+JDBC组合开发配置数据源有两种方式
- 用dump函数来了解oracle的数据类型存储方式
- 用命令方式管理Oracle的undo数据
- 在Tomcat配置JNDI数据源的三种方式 .
- Oracle 数据类型及存储方式(四)
- Oracle 更改表名称的几种方式
- oracle修改登录认证方式
- 创建oracle dblink 的两种方式
- IT忍者神龟之在Tomcat配置JNDI数据源的三种方式
- Java后台框架篇--Spring配置数据源的三种方式(dbcp,c3p0,jndi)
- ORACLE如何在有视图的SQL中使用hint(提示)来设置视图内的SQL查询方式
- shell脚本与Oracle交互方式
- c# Oracle 远程连接方式 plsql 连接oracle 11g 64位
- Oracle 数据类型及存储方式