Browse Source

新增统计项目

chenweida 8 years ago
parent
commit
764350ef11

+ 14 - 0
common-lib-parent-pom/pom.xml

@ -10,11 +10,13 @@
    <packaging>pom</packaging>
    <packaging>pom</packaging>
    <modules>
    <modules>
        <module>../common/common-swagger</module>
        <module>../common/common-swagger</module>
        <module>../common/common-quartz</module>
    </modules>
    </modules>
    <properties>
    <properties>
        <version.swagger>2.4.0</version.swagger>
        <version.swagger>2.4.0</version.swagger>
        <version.swagger-ui>2.4.0</version.swagger-ui>
        <version.swagger-ui>2.4.0</version.swagger-ui>
        <version.quartz>2.3.0</version.quartz>
    </properties>
    </properties>
    <dependencyManagement>
    <dependencyManagement>
@ -31,6 +33,18 @@
                <version>${version.swagger-ui}</version>
                <version>${version.swagger-ui}</version>
            </dependency>
            </dependency>
            <!--swagger ui end-->
            <!--swagger ui end-->
            <!--quartz start-->
            <dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz</artifactId>
                <version>${version.quartz}</version>
            </dependency>
            <dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz-jobs</artifactId>
                <version>${version.quartz}</version>
            </dependency>
            <!--quartz end-->
        </dependencies>
        </dependencies>
    </dependencyManagement>
    </dependencyManagement>
</project>
</project>

+ 27 - 0
common/common-quartz/pom.xml

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.yihu.jw</groupId>
        <artifactId>common-lib-parent-pom</artifactId>
        <version>1.0.0</version>
        <relativePath>../../common-lib-parent-pom/pom.xml</relativePath>
    </parent>
    <groupId>com.yihu.jw</groupId>
    <artifactId>common-quartz</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
        </dependency>
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz-jobs</artifactId>
        </dependency>
    </dependencies>
</project>

+ 25 - 0
common/common-quartz/src/main/java/com/yihu/jw/config/quartz/JobFactory.java

@ -0,0 +1,25 @@
//package com.yihu.jw.config.quartz;
//
//import org.quartz.spi.TriggerFiredBundle;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
//import org.springframework.scheduling.quartz.AdaptableJobFactory;
//import org.springframework.stereotype.Component;
//
///**
// * Created by Administrator on 2016.10.12.
// * 為了讓quartz種可以使用Spring的注入
// */
//@Component("jobFactory")
//public class JobFactory extends AdaptableJobFactory {
//    @Autowired
//    private AutowireCapableBeanFactory capableBeanFactory;
//    @Override
//    protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception {
//        // 调用父类的方法
//        Object jobInstance = super.createJobInstance(bundle);
//       // 进行注入
//        capableBeanFactory.autowireBean(jobInstance);
//        return jobInstance;
//    }
//}

+ 52 - 0
common/common-quartz/src/main/java/com/yihu/jw/config/quartz/SchedulerConfig.java

@ -0,0 +1,52 @@
//package com.yihu.jw.config.quartz;
//
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.beans.factory.config.PropertiesFactoryBean;
//import org.springframework.context.ApplicationContext;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.core.io.ClassPathResource;
//import org.springframework.scheduling.quartz.SchedulerFactoryBean;
//
//import javax.sql.DataSource;
//import java.io.IOException;
//import java.util.Properties;
//
///**
// * Created by chenweida on 2016/2/3.
// */
//@Configuration
//public class SchedulerConfig {
//    @Autowired
//    private ApplicationContext applicationContext;
//    @Autowired
//    private JobFactory jobFactory;
//    @Autowired
//    private DataSource dataSource;
//    @Bean
//    SchedulerFactoryBean schedulerFactoryBean() throws IOException {
//        SchedulerFactoryBean bean = new SchedulerFactoryBean();
//        bean.setJobFactory(jobFactory);
//        bean.setApplicationContext(this.applicationContext);
//        bean.setOverwriteExistingJobs(true);
//        bean.setStartupDelay(20);// 延时启动
//        bean.setAutoStartup(true);
//        bean.setDataSource(dataSource);
//        bean.setQuartzProperties(quartzProperties());
//        return bean;
//    }
//
//    /**
//     * quartz配置文件
//     * @return
//     * @throws IOException
//     */
//    @Bean
//    public Properties quartzProperties() throws IOException {
//        PropertiesFactoryBean propertiesFactoryBean = new PropertiesFactoryBean();
//        propertiesFactoryBean.setLocation(new ClassPathResource("/quartz.properties"));
//        propertiesFactoryBean.afterPropertiesSet();
//        return propertiesFactoryBean.getObject();
//    }
//}
//

+ 41 - 0
common/common-quartz/src/main/resources/quartz.properties

@ -0,0 +1,41 @@
# Default Properties file for use by StdSchedulerFactory
# to create a Quartz Scheduler Instance, if a different
# properties file is not explicitly specified.
#
 
org.quartz.scheduler.instanceName: DefaultQuartzScheduler
org.quartz.scheduler.rmi.export: false
org.quartz.scheduler.rmi.proxy: false
org.quartz.scheduler.wrapJobExecutionInUserTransaction: false
 
org.quartz.threadPool.class: org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount: 20
org.quartz.threadPool.threadPriority: 5
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread: true
 
org.quartz.jobStore.misfireThreshold: 60000
 
#============================================================================
# Configure JobStore
#============================================================================
 
# RAM
# org.quartz.jobStore.class: org.quartz.simpl.RAMJobStore
# Configure JobStore Cluster
org.quartz.jobStore.class:org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass:org.quartz.impl.jdbcjobstore.StdJDBCDelegate
#datasource׺
org.quartz.jobStore.tablePrefix:QRTZ_
#org.quartz.jobStore.dataSource:qzDS
#
##============================================================================
## Configure Datasources
##============================================================================
##datasource
#org.quartz.dataSource.qzDS.driver: com.mysql.jdbc.Driver
#org.quartz.dataSource.qzDS.URL: jdbc:mysql://172.19.103.85/wlyy?useUnicode=true&characterEncoding=utf-8&autoReconnect=true
#org.quartz.dataSource.qzDS.user: root
#org.quartz.dataSource.qzDS.password: 123456
org.quartz.jobGroupName = RS_JOBGROUP_NAME
org.quartz.triggerGroupName = RS_TRIGGERGROUP_NAME