zoukankan      html  css  js  c++  java
  • sharding JDBC 不支持批量导入解决方法

    package com.ydmes.service.impl.log;

    import com.ydmes.domain.entity.log.BarTraceBackLog;
    import org.springframework.beans.BeansException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    import org.springframework.jdbc.datasource.DataSourceTransactionManager;
    import org.springframework.stereotype.Component;
    import org.springframework.transaction.TransactionDefinition;
    import org.springframework.transaction.TransactionStatus;
    import org.springframework.transaction.support.DefaultTransactionDefinition;

    import java.util.List;

    @Component
    public class BarTraceBackLogBatchServiceImpl implements ApplicationContextAware {
    private static ApplicationContext applicationContext;

    public void batchInsertBarTraceBackLogs(List<BarTraceBackLog> barTraceBackLogs) {
    DefaultTransactionDefinition definition = new DefaultTransactionDefinition();
    definition.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
    definition.setIsolationLevel(TransactionDefinition.ISOLATION_READ_COMMITTED);

    DataSourceTransactionManager transactionManager = (DataSourceTransactionManager)
    applicationContext.getBean("shardingTransactitonManager");
    TransactionStatus transactionStatus = transactionManager.getTransaction(definition);

    for (BarTraceBackLog barTraceBackLog : barTraceBackLogs) {
    //UserDao有create方法,单条插入
    applicationContext.getBean(BarTraceBackLogServiceImpl.class).insertSelective(barTraceBackLog);
    }
    transactionManager.commit(transactionStatus);
    }


    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
    this.applicationContext = applicationContext;
    }
    }

  • 相关阅读:
    oralce 11g data guard
    oracle的锁与并发机制
    10 个MySQL数据库备份教程推荐
    Linux环境下用exp备份Oracle数据表并导入的脚本
    使用Oracle 10g的Logminer挖掘日志
    ORACLE查询表最近更改的数据
    如何监控oracle的索引是否使用
    看 淡 一切 生 命 只 是 个 过 程
    Java数组声明、创建、初始化
    Linux建立FTP的方法
  • 原文地址:https://www.cnblogs.com/xyj179/p/11454562.html
Copyright © 2011-2022 走看看