qq_1223802380
2017-06-08 07:41
采纳率: 100%
浏览 3.2k
已采纳

java代码实现mysql到oracle的数据迁移,每天凌晨两点更新当天数据到oracle数据库

oracle数据库中的表是我根据需求自己建的,有八九张,并且oracle数据库中的那几张表,每张表对应的是mysql数据
库中两三张表里的部分字段,我要把做的就是把mysql中的数据导入到oracle数据库中,并且每天凌晨2点定时更新mysql中的当天数据到oracle数据库中。。做过的好心大哥大姐帮帮小弟啊,分享下代码,谢谢谢谢~~~~~~(java代码实现。。)

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • xhl_2017 2017-06-08 08:07
    已采纳

    写一个定时任务
    package task;

    import java.util.Date;

    import org.quartz.JobExecutionContext;

    import org.quartz.JobExecutionException;

    public class BusinessReport implements org.quartz.Job{

    public void perform(){ //执行报表统计入口函数

    //业务逻辑

    System.out.println("开始执行报表的业务逻辑了----现在的时间是--"+new Date());

        }  
    
    public void execute(JobExecutionContext arg0) throws JobExecutionException {  
        perform();  
    
    }  
    

    }

    applicationContext.xml文件

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

    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">



    <bean name="reportTask"  
        class="org.springframework.scheduling.quartz.JobDetailBean">  
        <property name="jobClass" value="task.BusinessReport" />  
    </bean>  
    
    <!-- 触发器 -->  
    <bean id="cronTrigger"  
        class="org.springframework.scheduling.quartz.CronTriggerBean">  
    
        <!-- 指向我们的任务 -->  
        <property name="jobDetail" ref="reportTask" />  
    
        <!--  每天下午16点50分到55分,每分钟运行一次 -->  
        <property name="cronExpression" value="0 50-55 16 * * ?" />  
    </bean>  
    
    
    <!-- 调度器  -->  
    <bean  
        class="org.springframework.scheduling.quartz.SchedulerFactoryBean">  
        <property name="triggers">  
            <list>  
                <!--  触发器列表 -->  
                <ref bean="cronTrigger" />  
            </list>  
        </property>  
        <property name="configLocation" value="classpath:quartz.properties" />   
    </bean>  
    
    点赞 打赏 评论
  • Hefei19881002 2017-06-08 07:39

    定时调用接口呗, 把mysql返回的数据写到oracle

    点赞 打赏 评论
  • xhl_2017 2017-06-08 08:08

    quartz.properties文件的内容(默认放在类路径下)
    #============================================================================

    Configure Main Scheduler Properties

    #============================================================================
    org.quartz.scheduler.instanceName = DefaultQuartzScheduler
    org.quartz.scheduler.instanceId = AUTO
    org.quartz.scheduler.rmi.export = false
    org.quartz.scheduler.rmi.proxy = false
    org.quartz.scheduler.wrapJobExecutionInUserTransaction = false

    #============================================================================

    Configure ThreadPool

    #============================================================================
    #org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
    org.quartz.threadPool.threadCount = 10
    org.quartz.threadPool.threadPriority = 5
    #org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread = true

    #============================================================================

    Configure JobStore

    #============================================================================
    #org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
    #org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
    org.quartz.jobStore.misfireThreshold = 60000
    #org.quartz.jobStore.useProperties = false
    #org.quartz.jobStore.tablePrefix = QRTZ_
    #org.quartz.jobStore.dataSource = myDS

    #org.quartz.jobStore.isClustered = true
    #org.quartz.jobStore.clusterCheckinInterval = 15000

    #============================================================================

    Configure DataSource

    #============================================================================
    org.quartz.dataSource.myDS.driver = com.mysql.jdbc.Driver
    org.quartz.dataSource.myDS.URL = jdbc:mysql://localhost/test
    org.quartz.dataSource.myDS.user = root
    org.quartz.dataSource.myDS.password = root
    org.quartz.dataSource.myDS.maxConnections = 10

    附:cronExpression表达式解释:
    0 0 12 * * ?---------------在每天中午12:00触发
    0 15 10 ? * *---------------每天上午10:15 触发
    0 15 10 * * ?---------------每天上午10:15 触发
    0 15 10 * * ? *---------------每天上午10:15 触发
    0 15 10 * * ? 2005---------------在2005年中的每天上午10:15 触发
    0 * 14 * * ?---------------每天在下午2:00至2:59之间每分钟触发一次
    0 0/5 14 * * ?---------------每天在下午2:00至2:59之间每5分钟触发一次
    0 0/5 14,18 * * ?---------------每天在下午2:00至2:59和6:00至6:59之间的每5分钟触发一次
    0 0-5 14 * * ?---------------每天在下午2:00至2:05之间每分钟触发一次
    0 10,44 14 ? 3 WED---------------每三月份的星期三在下午2:00和2:44时触发
    0 15 10 ? * MON-FRI---------------从星期一至星期五的每天上午10:15触发
    0 15 10 15 * ?---------------在每个月的每15天的上午10:15触发
    0 15 10 L * ?---------------在每个月的最后一天的上午10:15触发
    0 15 10 ? * 6L---------------在每个月的最后一个星期五的上午10:15触发
    0 15 10 ? * 6L 2002-2005---------------在2002, 2003, 2004 and 2005年的每个月的最后一个星期五的上午10:15触发
    0 15 10 ? * 6#3---------------在每个月的第三个星期五的上午10:15触发
    0 0 12 1/5 * ?---------------从每月的第一天起每过5天的中午12:00时触发
    0 11 11 11 11 ?---------------在每个11月11日的上午11:11时触发.­

    点赞 打赏 评论

相关推荐 更多相似问题