oracle 分表插件,mybatis-plus-tableslince

##mybatis | mybatis plus 自动分表插件

###已支持自动分表规则

1.按年

2.按月

3.按日

规则目录:package com.mybatis.plug.slicingStrategy;可以在这里自定义分表时间策略

###maven引入

com.mybatis.plug

mybatis-plus-tableslince

1.0-SNAPSHOT

###spring环境配置

spring xml中新增:

spring.xml中修改mybatis plus的配置:

class="com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor"/>

class="com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor"/>

class="com.mybatis.plug.interceptor.TableSlicingInterceptor"/>

被分表的entity上添加注解:

@TableSlicing(slicing = true, value = "SYS_AUTH_LOG", strategy = "DAY")

###spring boot配置

mybatis plus 的@Configuration配置文件中新增:

/**

* 分表插件

*

* @return

*/

@Bean("strategyManager")

public StrategyManager strategyManager() {

StrategyManager strategyManager = new StrategyManager();

Map strategies = new HashMap<>();

strategies.put("YEAR", "com.mybatis.plug.slicingStrategy.ByYearStrategy");

strategies.put("MOUTH", "com.mybatis.plug.slicingStrategy..ByMouthStrategy");

strategies.put("DAY", "com.mybatis.plug.slicingStrategy..ByDayStrategy");

strategyManager.setStrategies(strategies);

Map slicingTables = new HashMap<>();

slicingTables.put("SYSTEM_AUTH_LOG", "cn.buz.models.entity.AuthLog");

slicingTables.put("SYSTEM_LOG4J_RECORDS", "cn.buz.models.entity.Log4jRecords");

strategyManager.setSlicingTables(slicingTables);

return strategyManager;

}

/**

* table分表插件

*/

public TableSlicingInterceptor tableSlicingInterceptor() {

TableSlicingInterceptor slicing = new TableSlicingInterceptor();

return slicing;

}

被分表的entity上添加注解:

@TableSlicing(slicing = true, value = "SYS_AUTH_LOG", strategy = "DAY")

###其他说明

1.目前只在oracle环境下测试过,没有兼容多数据库类型.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值