zoukankan      html  css  js  c++  java
  • sharding-jdbc

    版本4.0.0-4.1.1

    // 配置表规则
    TableRuleConfiguration tableRuleConfiguration = new TableRuleConfiguration("table_name","databasename.table_name_${0..3}");

    //设置分片策略,这里简单起见直接取模,也可以使用自定义算法来实现分片规则
    tableRuleConfiguration.setTableShardingStrategyConfig(new InlineShardingStrategyConfiguration("applicationId", "table_name_${applicationId % 4}"));
    //tableRuleConfiguration.setKeyGeneratorConfig(new KeyGeneratorConfiguration("SNOWFLAKE", "id"));
    // 配置分片规则
    ShardingRuleConfiguration shardingRuleConfiguration = new ShardingRuleConfiguration();
    shardingRuleConfiguration.getTableRuleConfigs().add(tableRuleConfiguration);
    shardingRuleConfiguration.getBindingTableGroups().add("table_name");
    // 配置默认分表策略
    shardingRuleConfiguration.setDefaultTableShardingStrategyConfig(
    new InlineShardingStrategyConfiguration("applicationId", "sale_bill_detail_${applicationId % 4}")
    );
    // 配置默认分库策略
    DataSource datasource = BeanUtil.getDuidDataSource(driverClass,url,user,password);

    Properties props=new Properties();
    //props.put("sql.show", "true");
    Map<String, DataSource> dataSourceMap = new HashMap<>();
    dataSourceMap.put("databasename", datasource);
    return ShardingDataSourceFactory.createDataSource(dataSourceMap,
    shardingRuleConfiguration, props);

    版本:3.0.0

    <!--sharding-jdbc-->
    <dependency>
    <groupId>io.shardingsphere</groupId>
    <artifactId>sharding-jdbc-spring-namespace</artifactId>
    <version>3.0.0</version>
    </dependency>

    TableRuleConfiguration tableRuleConfiguration = new TableRuleConfiguration();
    tableRuleConfiguration.setLogicTable("sale_bill_detail");
    tableRuleConfiguration.setActualDataNodes("mydatabase_name.sale_bill_detail_${0..3}");
    ///设置分片策略,这里简单起见直接取模,也可以使用自定义算法来实现分片规则
    tableRuleConfiguration.setTableShardingStrategyConfig(new InlineShardingStrategyConfiguration("applicationId", "table_name_${applicationId % 4}"));
    //tableRuleConfiguration.setKeyGeneratorConfig(new KeyGeneratorConfiguration("SNOWFLAKE", "id"));
    // 配置分片规则
    ShardingRuleConfiguration shardingRuleConfiguration = new ShardingRuleConfiguration();
    shardingRuleConfiguration.getTableRuleConfigs().add(tableRuleConfiguration);
    shardingRuleConfiguration.getBindingTableGroups().add("table_name");
    // 配置默认分表策略
    shardingRuleConfiguration.setDefaultTableShardingStrategyConfig(
    new InlineShardingStrategyConfiguration("applicationId", "sale_bill_detail_${applicationId % 4}")
    );
    // 配置默认分库策略
    DataSource datasource = BeanUtil.getDuidDataSource(driverClass,url,user,password);


    Properties props=new Properties();
    //props.put("sql.show", "true");
    Map<String, DataSource> dataSourceMap = new HashMap<>();
    dataSourceMap.put("mydatabase_name", datasource);
    return ShardingDataSourceFactory.createDataSource(dataSourceMap,
    shardingRuleConfiguration, null, props);

  • 相关阅读:
    Unity NGUI 3.0.4版本 制作网络版斗地主
    unity3D与网页的交互---做项目的一点总结
    Cross-platform Tools
    Win7下Qt5的安装及使用
    VS Installer教程
    C++ & MFC
    论文模板的定制
    批处理文件
    MFC六大关键技术
    C/C++常用预处理指令
  • 原文地址:https://www.cnblogs.com/andydao/p/14004754.html
Copyright © 2011-2022 走看看