您觉得本文档还缺少什么内容?可以自己补充~
封装了数据源、Mybatis相关配置类、工具类.
- 配置文件解释
database: # 字段介绍参考 DatabaseProperties
tenantIdColumn: tenant_code # COLUMN模式时, 租户字段的列名
multiTenantType: COLUMN # 租户模式 NONE COLUMN
isNotWrite: false # 是否不能新增、修改、删除数据. (演示环境使用)
isBlockAttack: false # 是否启用 防止全表更新与删除插件
isIllegalSql: false # 是否启用 sql性能规范插件
limit: -1 # 分页查询最大值限制 -1表示不限制
dbType: MYSQL # 数据库类型
isDataScope: true # 是否启用数据权限
isSeata: false # 是否启用分布式事务
id-type: HU_TOOL # id 生成策略 # HU_TOOL DEFAULT CACHE
hutoolId:
workerId: 0
dataCenterId: 0
default-id:
time-bits: 31
worker-bits: 22
seq-bits: 10
cache-id:
time-bits: 31
worker-bits: 22
seq-bits: 10
epochStr: '2022-02-22'
boost-power: 3
padding-factor: 50
BcMetaObjectHandler : 处理调用Mapper相关接口操作是数据库时, id、createdDate、createdBy、lastModifiedDate、lastModifiedBy等字段数据设置. 处理逻辑: 实体参数中, 上述字段值为空时, 才会生成id或者日期对其赋值.
UpdateAllById : 增强Mapper功能.使得SuperMapper拥有修改所有字段等方法.
DataScopeInnerInterceptor : 数据权限拦截器
Wraps: 增强MybatisPlus的Wrappers类
LbqWrapper
* 相比 LambdaQueryWrapper 的增强如下:
* 1,new QueryWrapper(T entity)时, 对entity 中的string字段 %和_ 符号进行转义,便于模糊查询
* 2,new QueryWrapper(T entity)时, 对entity 中 RemoteData 类型的字段 值为null或者 key为null或者""时,忽略拼接成查询条件
* 3,对nested、eq、ne、gt、ge、lt、le、in、*like*、 等方法 进行条件判断,null 或 "" 字段不加入查询
* 4,对*like*相关方法的参数 %和_ 符号进行转义,便于模糊查询
* 5,增加 leFooter 方法, 将日期参数值,强制转换成当天 23:59:59
* 6,增加 geHeader 方法, 将日期参数值,强制转换成当天 00:00:00
- QueryWrap
* 相比 QueryWrapper 的增强如下:
* 1,new QueryWrapper(T entity)时, 对entity 中的string字段 %和_ 符号进行转义,便于模糊查询
* 2,new QueryWrapper(T entity)时, 对entity 中 RemoteData 类型的字段 值为null或者 key为null或者""时,忽略拼接成查询条件
* 3,对nested、eq、ne、gt、ge、lt、le、in、*like*、 等方法 进行条件判断,null 或 "" 字段不加入查询
* 4,对*like*相关方法的参数 %和_ 符号进行转义,便于模糊查询
* 5,增加 leFooter 方法, 将日期参数值,强制转换成当天 23:59:59
* 6,增加 geHeader 方法, 将日期参数值,强制转换成当天 00:00:00
- LbuWrapper
1, 对nested、eq、ne、gt、ge、lt、le、in、*like*、 等方法 进行条件判断,null 或 "" 字段不加入查询
2, 对*like*相关方法的参数 %和_ 符号进行转义,便于模糊查询
- FullLikeTypeHandler : 自定义模糊查询处理器 , 在xml中想要使用like 关键字模糊查询, 无需自己拼接
%
了
and name like #{name, typeHandler=fullLike} => and name like '%name%'
and code like #{code, typeHandler=leftLike} => and code like '%code'
and describe like #{describe, typeHandler=rightLike} => and describe like 'describe%'
- TenantP6SpyLogger : p6spy SQL日志打印类. 可以自己调整该类 实现dev环境, 控制台打印的红色SQL日志样式.