zoukankan      html  css  js  c++  java
  • quartz demo01

    1,Pom.xml   加入:quartz-2.1.7.jar

    <dependency>

      <groupId>org.quartz-scheduler</groupId>

      <artifactId>quartz</artifactId>

      <version>2.1.7</version>

    </dependency>

    2,定义任务类

    package com.xinwei.util;

     

    import com.xinwei.rbac.service.CommonBizService;

    import com.xinwei.util.spring.SpringFactory;

     

    public class UpdateCurrentValueTask { 

       static CommonBizService service;

       static {

          service = (CommonBizService) SpringFactory

               .getBean("commonBizServiceImpl");

       }

        public void doTask(){ 

          System.out.println("do quertz scheduler... ..."); 

            service.updateCurrentValueBySeqName("group_id_seq");

        } 

    3, spring-scheduler.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:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" 

       xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"

       xmlns:aop="http://www.springframework.org/schema/aop"

       xmlns:jpa="http://www.springframework.org/schema/data/jpa"

       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/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc.xsd

          http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd

          http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd

          http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd

          http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa.xsd"

       default-lazy-init="false">

     

        <!-- 任务管理器 --> 

        <beans> 

            <!-- 要调用的工作类 --> 

            <bean id="quartzJob" class="com.xinwei.util.UpdateCurrentValueTask"></bean> 

            <!-- 定义调用对象和调用对象的方法 多个任务定义多个--> 

            <bean id="jobtask2" 

                class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"

                <!-- 调用的类 --> 

                <property name="targetObject"

                    <ref bean="quartzJob" /> 

                </property> 

                <!-- 调用类中的方法 --> 

                <property name="targetMethod"

                    <value>doTask</value> 

                </property> 

            </bean> 

            <!-- 定义触发时间 --> 

            <bean id="doTime2" 

                class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"

                <property name="jobDetail"

                    <ref bean="jobtask2" /> 

                </property> 

                <!-- cron表达式  每天24:00运行一次 --> 

               <property name="cronExpression" value="0 0 0 * * ?" /> 

            </bean> 

            <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 --> 

            <bean id="startQuertz" lazy-init="false" autowire="no" 

                class="org.springframework.scheduling.quartz.SchedulerFactoryBean"

                <property name="triggers"

                    <list> 

                        <ref bean="doTime2"/> 

                    </list> 

                </property> 

            </bean> 

        </beans>

    </beans>

    4,web.xml中管理上述schduler

    <?xml version="1.0" encoding="UTF-8"?>

    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

       xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

       xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

       version="2.5">

       <display-name>security</display-name>

     

       <context-param>

          <param-name>contextConfigLocation</param-name>

          <param-value>

             classpath*:/applicationContext.xml,

             classpath*:/applicationContext-shiro.xml,

             classpath*:/spring-scheduler.xml

          </param-value>

       </context-param>

     

       <listener>

          <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

       </listener>

     

       <!-- 主要注册request,在普通类中获取request对象 -->

       <listener>

          <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>

       </listener>

     

      

     

       <filter>

          <filter-name>encodingFilter</filter-name>

          <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

          <init-param>

             <param-name>encoding</param-name>

             <param-value>UTF-8</param-value>

          </init-param>

          <init-param>

             <param-name>forceEncoding</param-name>

             <param-value>true</param-value>

          </init-param>

       </filter>

       <filter-mapping>

          <filter-name>encodingFilter</filter-name>

          <url-pattern>/*</url-pattern>

       </filter-mapping>

     

     

       <!-- 过滤参数,将前台传输的参数request. page.去掉 -->

        <filter>

          <filter-name>ParameterFilter</filter-name>

          <filter-class>com.xinwei.filter.ParameterFilter</filter-class>

          <init-param> 

               <param-name>blackListURL</param-name> <!-- 配置黑名单url 表示不走过滤器的url order:1 --> 

               <param-value> 

                   /js/**

                /css/**

                /styles/**

                /images/**

                /plugins/**

                /fonts/**

                /login/timeout

                /logout

                /views/**

               </param-value> 

           </init-param> 

           <init-param> 

               <param-name>whiteListURL</param-name> <!-- 配置白名单url 表示走过滤器的url order:2--> 

               <param-value> 

                   /**

               </param-value> 

           </init-param> 

       </filter>

       <filter-mapping>

          <filter-name>ParameterFilter</filter-name>

          <url-pattern>/*</url-pattern>

       </filter-mapping>

      

      

      

       <!-- pagination filter -->

       <filter>

          <filter-name>PageFilter</filter-name>

          <filter-class>com.xinwei.filter.PageFilter</filter-class>

          <init-param> 

               <param-name>blackListURL</param-name> <!-- 配置黑名单url 表示不走过滤器的url order:1 --> 

               <param-value></param-value> 

           </init-param> 

           <init-param> 

               <param-name>whiteListURL</param-name> <!-- 配置白名单url 表示走过滤器的url order:2--> 

               <param-value> 

                   /**/list

               </param-value> 

           </init-param> 

       </filter>

       <filter-mapping>

          <filter-name>PageFilter</filter-name>

          <url-pattern>/*</url-pattern>

       </filter-mapping>

      

      

      

      

      

      

     

     

       <!-- <filter> <filter-name>openEntityManagerInViewFilter</filter-name> <filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>

          </filter> <filter-mapping> <filter-name>openEntityManagerInViewFilter</filter-name>

          <url-pattern>/*</url-pattern> </filter-mapping> -->

     

     

     

     

     

     

     

       <filter>

          <filter-name>shiroFilter</filter-name>

          <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>

          <init-param>

             <param-name>targetFilterLifecycle</param-name>

             <param-value>true</param-value>

          </init-param>

       </filter>

       <filter-mapping>

          <filter-name>shiroFilter</filter-name>

          <url-pattern>/*</url-pattern>

       </filter-mapping>

     

     

       <servlet>

          <servlet-name>springServlet</servlet-name>

          <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

          <init-param>

             <param-name>contextConfigLocation</param-name>

             <param-value>classpath*:/spring-mvc.xml</param-value>

          </init-param>

          <init-param>

             <param-name>dispatchOptionsRequest</param-name>

             <param-value>true</param-value>

          </init-param>

          <load-on-startup>1</load-on-startup>

       </servlet>

       <servlet-mapping>

          <servlet-name>springServlet</servlet-name>

          <url-pattern>/</url-pattern>

       </servlet-mapping>

     

      

         <servlet>

        <servlet-name>hessianServlet</servlet-name>

        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

        <init-param>

          <param-name>contextConfigLocation</param-name>

          <param-value>classpath:/server/hessian-server.xml</param-value>

        </init-param>

        <load-on-startup>1</load-on-startup>

          </servlet>

         

        <servlet-mapping>

          <servlet-name>hessianServlet</servlet-name>

          <url-pattern>/hessian/*</url-pattern>

        </servlet-mapping>

     

     

     

     

     

       <session-config>

          <session-timeout>30</session-timeout>

       </session-config>

     

       <error-page>

          <exception-type>java.lang.Throwable</exception-type>

          <location>/WEB-INF/views/error/500.jsp</location>

       </error-page>

       <error-page>

          <error-code>500</error-code>

          <location>/WEB-INF/views/error/500.jsp</location>

       </error-page>

       <error-page>

          <error-code>404</error-code>

          <location>/WEB-INF/views/error/404.jsp</location>

       </error-page>

       <error-page>

          <error-code>403</error-code>

          <location>/WEB-INF/views/error/403.jsp</location>

       </error-page>

     

     

    </web-app>
  • 相关阅读:
    【BZOJ 2124】【CodeVS 1283】等差子序列
    【BZOJ 1036】【ZJOI 2008】树的统计Count
    【BZOJ 1901】【ZJU 2112】Dynamic Rankings
    【BZOJ 3924】【ZJOI 2015】幻想乡战略游戏
    【BZOJ 4103】【THUSC 2015】异或运算
    【BZOJ 4513】【SDOI 2016】储能表
    【HDU 3622】Bomb Game
    【BZOJ 3166】【HEOI 2013】Alo
    【BZOJ 3530】【SDOI 2014】数数
    【BZOJ 4567】【SCOI 2016】背单词
  • 原文地址:https://www.cnblogs.com/alamps/p/7590830.html
Copyright © 2011-2022 走看看