配置更新

This commit is contained in:
attiya 2025-11-27 16:58:22 +08:00
parent 5bdc4a02fe
commit 34fdf8cffc
4 changed files with 53 additions and 112 deletions

View File

@ -9,61 +9,48 @@ import com.mybatisflex.core.dialect.DbType;
import com.mybatisflex.core.keygen.KeyGenerators; import com.mybatisflex.core.keygen.KeyGenerators;
import com.mybatisflex.core.tenant.TenantFactory; import com.mybatisflex.core.tenant.TenantFactory;
import com.mybatisflex.core.tenant.TenantManager; import com.mybatisflex.core.tenant.TenantManager;
import org.slf4j.Logger; import jakarta.annotation.PostConstruct;
import org.slf4j.LoggerFactory; import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
/**
* @author attiya @Slf4j
*/
@Configuration @Configuration
public class MyBatisFlexConfiguration { public class MyBatisFlexConfiguration {
private static final Logger logger = LoggerFactory @PostConstruct
.getLogger("mybatis-flex-sql:"); public void init() {
public MyBatisFlexConfiguration() {
//开启审计功能 //开启审计功能
AuditManager.setAuditEnable(true); AuditManager.setAuditEnable(true);
//设置 SQL 审计收集器
AuditManager.setMessageCollector(auditMessage -> AuditManager.setMessageCollector(auditMessage ->
logger.info("{},{}ms", auditMessage.getFullSql() log.info("{},{}ms", auditMessage.getFullSql(), auditMessage.getElapsedTime())
, auditMessage.getElapsedTime())
); );
logger.info("开始初始化mybatis-flex全局配置");
log.info("开始初始化mybatis-flex全局配置");
FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig(); FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig();
//全局ID生成策略配置 //全局ID生成策略配置
FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig(); FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig();
keyConfig.setKeyType(KeyType.Generator); keyConfig.setKeyType(KeyType.Generator);
keyConfig.setValue(KeyGenerators.snowFlakeId); keyConfig.setValue(KeyGenerators.snowFlakeId);
keyConfig.setBefore(true); keyConfig.setBefore(true);
globalConfig.setKeyConfig(keyConfig);
globalConfig.setTenantColumn(EbikeContents.TENANT_ID); globalConfig.setTenantColumn(EbikeContents.TENANT_ID);
globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE); globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE);
globalConfig.setDbType(DbType.POSTGRE_SQL);
globalConfig.setKeyConfig(keyConfig);
//方言配置
globalConfig.setDbType(DbType.POSTGRE_SQL); // 关键配置
//设置数据库正常时的值
globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE); globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE);
//设置数据已被删除时的值
globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE); globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE);
log.info("MyBatis-Flex 全局配置完成");
} }
/**
* 详细的租户工厂配置
*/
@Bean @Bean
public static TenantFactory tenantFactory() { public TenantFactory tenantFactory() {
logger.info("开始初始化租户工厂"); log.info("开始初始化租户工厂");
EbikeTenantFactory factory = new EbikeTenantFactory(); EbikeTenantFactory factory = new EbikeTenantFactory();
TenantManager.setTenantFactory(factory); TenantManager.setTenantFactory(factory);
return new EbikeTenantFactory(); return factory;
} }
} }

View File

@ -6,48 +6,39 @@ import com.mybatisflex.core.FlexGlobalConfig;
import com.mybatisflex.core.audit.AuditManager; import com.mybatisflex.core.audit.AuditManager;
import com.mybatisflex.core.dialect.DbType; import com.mybatisflex.core.dialect.DbType;
import com.mybatisflex.core.keygen.KeyGenerators; import com.mybatisflex.core.keygen.KeyGenerators;
import org.slf4j.Logger; import jakarta.annotation.PostConstruct;
import org.slf4j.LoggerFactory; import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
/**
* @author attiya @Slf4j
*/
@Configuration @Configuration
public class MyBatisFlexConfiguration { public class MyBatisFlexConfiguration {
private static final Logger logger = LoggerFactory @PostConstruct
.getLogger("mybatis-flex-sql:"); public void init() {
public MyBatisFlexConfiguration() {
//开启审计功能 //开启审计功能
AuditManager.setAuditEnable(true); AuditManager.setAuditEnable(true);
//设置 SQL 审计收集器
AuditManager.setMessageCollector(auditMessage -> AuditManager.setMessageCollector(auditMessage ->
logger.info("{},{}ms", auditMessage.getFullSql() log.info("{},{}ms", auditMessage.getFullSql(), auditMessage.getElapsedTime())
, auditMessage.getElapsedTime())
); );
log.info("开始初始化mybatis-flex全局配置");
FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig(); FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig();
//全局ID生成策略配置 //全局ID生成策略配置
FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig(); FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig();
keyConfig.setKeyType(KeyType.Generator); keyConfig.setKeyType(KeyType.Generator);
keyConfig.setValue(KeyGenerators.snowFlakeId); keyConfig.setValue(KeyGenerators.snowFlakeId);
keyConfig.setBefore(true); keyConfig.setBefore(true);
globalConfig.setKeyConfig(keyConfig);
globalConfig.setTenantColumn(EbikeContents.TENANT_ID); globalConfig.setTenantColumn(EbikeContents.TENANT_ID);
globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE); globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE);
globalConfig.setKeyConfig(keyConfig);
//方言配置 [关键配置]
globalConfig.setDbType(DbType.POSTGRE_SQL); globalConfig.setDbType(DbType.POSTGRE_SQL);
//设置数据库正常时的值
globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE); globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE);
//设置数据已被删除时的值
globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE); globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE);
log.info("MyBatis-Flex 全局配置完成");
} }
} }

View File

@ -1,69 +1,44 @@
package com.cdzy.staff.config; package com.cdzy.staff.config;
import com.cdzy.common.enums.EbikeContents; import com.cdzy.common.enums.EbikeContents;
import com.cdzy.staff.component.EbikeTenantFactory;
import com.mybatisflex.annotation.KeyType; import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.core.FlexGlobalConfig; import com.mybatisflex.core.FlexGlobalConfig;
import com.mybatisflex.core.audit.AuditManager; import com.mybatisflex.core.audit.AuditManager;
import com.mybatisflex.core.dialect.DbType; import com.mybatisflex.core.dialect.DbType;
import com.mybatisflex.core.keygen.KeyGenerators; import com.mybatisflex.core.keygen.KeyGenerators;
import com.mybatisflex.core.tenant.TenantFactory; import jakarta.annotation.PostConstruct;
import com.mybatisflex.core.tenant.TenantManager; import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
/**
* @author attiya @Slf4j
*/
@Configuration @Configuration
public class MyBatisFlexConfiguration { public class MyBatisFlexConfiguration {
private static final Logger logger = LoggerFactory @PostConstruct
.getLogger("mybatis-flex-sql:"); public void init() {
public MyBatisFlexConfiguration() {
//开启审计功能 //开启审计功能
AuditManager.setAuditEnable(true); AuditManager.setAuditEnable(true);
//设置 SQL 审计收集器
AuditManager.setMessageCollector(auditMessage -> AuditManager.setMessageCollector(auditMessage ->
logger.info("{},{}ms", auditMessage.getFullSql() log.info("{},{}ms", auditMessage.getFullSql(), auditMessage.getElapsedTime())
, auditMessage.getElapsedTime())
); );
log.info("开始初始化mybatis-flex全局配置");
FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig(); FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig();
//全局ID生成策略配置 //全局ID生成策略配置
FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig(); FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig();
keyConfig.setKeyType(KeyType.Generator); keyConfig.setKeyType(KeyType.Generator);
keyConfig.setValue(KeyGenerators.snowFlakeId); keyConfig.setValue(KeyGenerators.snowFlakeId);
keyConfig.setBefore(true); keyConfig.setBefore(true);
globalConfig.setKeyConfig(keyConfig);
globalConfig.setTenantColumn(EbikeContents.TENANT_ID); globalConfig.setTenantColumn(EbikeContents.TENANT_ID);
globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE); globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE);
globalConfig.setDbType(DbType.POSTGRE_SQL);
globalConfig.setKeyConfig(keyConfig);
//方言配置
globalConfig.setDbType(DbType.POSTGRE_SQL); // 关键配置
//设置数据库正常时的值
globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE); globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE);
//设置数据已被删除时的值
globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE); globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE);
}
/** log.info("MyBatis-Flex 全局配置完成");
* 详细的租户工厂配置
*/
@Bean
public static TenantFactory tenantFactory() {
logger.info("开始初始化租户工厂...");
EbikeTenantFactory factory = new EbikeTenantFactory();
TenantManager.setTenantFactory(factory);
return new EbikeTenantFactory();
} }
} }

View File

@ -6,51 +6,39 @@ import com.mybatisflex.core.FlexGlobalConfig;
import com.mybatisflex.core.audit.AuditManager; import com.mybatisflex.core.audit.AuditManager;
import com.mybatisflex.core.dialect.DbType; import com.mybatisflex.core.dialect.DbType;
import com.mybatisflex.core.keygen.KeyGenerators; import com.mybatisflex.core.keygen.KeyGenerators;
import com.mybatisflex.core.tenant.TenantFactory; import jakarta.annotation.PostConstruct;
import com.mybatisflex.core.tenant.TenantManager; import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
/**
* @author attiya @Slf4j
*/
@Configuration @Configuration
public class MyBatisFlexConfiguration { public class MyBatisFlexConfiguration {
private static final Logger logger = LoggerFactory @PostConstruct
.getLogger("mybatis-flex-sql:"); public void init() {
public MyBatisFlexConfiguration() {
//开启审计功能 //开启审计功能
AuditManager.setAuditEnable(true); AuditManager.setAuditEnable(true);
//设置 SQL 审计收集器
AuditManager.setMessageCollector(auditMessage -> AuditManager.setMessageCollector(auditMessage ->
logger.info("{},{}ms", auditMessage.getFullSql() log.info("{},{}ms", auditMessage.getFullSql(), auditMessage.getElapsedTime())
, auditMessage.getElapsedTime())
); );
log.info("开始初始化mybatis-flex全局配置");
FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig(); FlexGlobalConfig globalConfig = FlexGlobalConfig.getDefaultConfig();
//全局ID生成策略配置 //全局ID生成策略配置
FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig(); FlexGlobalConfig.KeyConfig keyConfig = new FlexGlobalConfig.KeyConfig();
keyConfig.setKeyType(KeyType.Generator); keyConfig.setKeyType(KeyType.Generator);
keyConfig.setValue(KeyGenerators.snowFlakeId); keyConfig.setValue(KeyGenerators.snowFlakeId);
keyConfig.setBefore(true); keyConfig.setBefore(true);
globalConfig.setKeyConfig(keyConfig);
globalConfig.setTenantColumn(EbikeContents.TENANT_ID); globalConfig.setTenantColumn(EbikeContents.TENANT_ID);
globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE); globalConfig.setLogicDeleteColumn(EbikeContents.LOGIC_DELETE);
globalConfig.setKeyConfig(keyConfig);
//方言配置 [关键配置]
globalConfig.setDbType(DbType.POSTGRE_SQL); globalConfig.setDbType(DbType.POSTGRE_SQL);
//设置数据库正常时的值
globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE); globalConfig.setNormalValueOfLogicDelete(Boolean.FALSE);
//设置数据已被删除时的值
globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE); globalConfig.setDeletedValueOfLogicDelete(Boolean.TRUE);
log.info("MyBatis-Flex 全局配置完成");
} }
} }