<?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: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/context
|
http://www.springframework.org/schema/context/spring-context.xsd
|
http://www.springframework.org/schema/mvc
|
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
|
|
<!--Spring 4 定时器 -->
|
<!-- 定时获取 微信AccessToken,频率为一小时一次 -->
|
<bean id="getAccessToken" class="com.moral.monitor.listener.quartz.GetAccessToken" scope="singleton" />
|
|
<!-- 设备 若10分钟内若没有 收到设备信息,报警通知-->
|
<bean id="equipmentCheck" class="com.moral.monitor.listener.quartz.EquipmentCheck" scope="singleton"/>
|
|
<!-- 定时通知任务-->
|
<bean id="messageNotice" class="com.moral.monitor.listener.quartz.MessageNotice" scope="singleton"/>
|
|
<!-- 微信 TOKEN -->
|
<bean id="tokenJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
|
<property name="targetObject" ref="getAccessToken" />
|
<property name="targetMethod" value="getat" />
|
<property name="concurrent" value="true" />
|
</bean>
|
|
<!-- 设备检测 -->
|
<bean id="checkJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
|
<property name="targetObject" ref="equipmentCheck" />
|
<property name="targetMethod" value="check" />
|
<property name="concurrent" value="true" />
|
</bean>
|
|
<!--通知用户-->
|
<bean id="noticeJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
|
<property name="targetObject" ref="messageNotice" />
|
<property name="targetMethod" value="notice" />
|
<property name="concurrent" value="true" />
|
</bean>
|
|
<bean id="tokenJobsimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
|
<property name="jobDetail" ref="tokenJob" />
|
<!-- 延迟 5 秒-->
|
<property name="startDelay" value="5000" />
|
<!-- 间隔 微信 acction 半小时一次, 2分钟 -->
|
<property name="repeatInterval" value="120000" />
|
</bean>
|
|
<!-- 设备状态检测 -->
|
<bean id="checkJobsimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
|
<property name="jobDetail" ref="checkJob" />
|
<!-- 延迟 5 秒-->
|
<property name="startDelay" value="5000" />
|
<!-- 间隔 3分钟180000 -->
|
<property name="repeatInterval" value="600000" />
|
</bean>
|
|
<!--定时查表报警通知用户-->
|
<bean id="noticeJobsimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean" >
|
<property name="jobDetail" ref="noticeJob" />
|
<!-- 延迟 5 秒-->
|
<property name="startDelay" value="5000" />
|
<!-- 间隔 3分钟180000 -->
|
<property name="repeatInterval" value="30000" />
|
</bean>
|
|
<!-- 设备离线状态检查-->
|
<bean id="stopStateCheck" class="com.moral.monitor.listener.quartz.StopStateCheck" scope="singleton"/>
|
|
<bean id="stateJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
|
<property name="targetObject" ref="stopStateCheck" />
|
<property name="targetMethod" value="check" />
|
<property name="concurrent" value="true" />
|
</bean>
|
|
<bean id="stateJobsimpleTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
|
<property name="jobDetail" ref="stateJob"></property>
|
<property name="cronExpression" value="0/15 * * * * ?"></property>
|
</bean>
|
|
<!-- 总调度用于启动Spring定时器 -->
|
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
|
<property name="triggers">
|
<list>
|
<!--<ref bean="tokenJobsimpleTrigger" />-->
|
<!--<ref bean="checkJobsimpleTrigger"/>-->
|
<!--<ref bean="noticeJobsimpleTrigger"/>-->
|
|
<ref bean="stateJobsimpleTrigger" />
|
</list>
|
</property>
|
</bean>
|
</beans>
|