feat(database): 支持达梦数据库适配

- 在多个Mapper XML文件中增加对达梦数据库的SQL语句适配
- 为AiCommandRecordMapper.xml中的model字段添加反引号避免关键字冲突
- 为LogMapper.xml、UserMapper.xml和DatabaseMapper.xml添加databaseId属性区分不同数据库
- 新增MybatisConfig配置类用于识别数据库类型并注册VendorDatabaseIdProvider
- pom.xml中引入达梦数据库驱动依赖DmJdbcDriver8
- 完善RoleMapper接口注释明确返回值类型
This commit is contained in:
theo
2025-12-04 11:26:27 +08:00
parent 96676f487e
commit e1d7f0371d
8 changed files with 321 additions and 36 deletions

View File

@@ -7,11 +7,15 @@ import com.baomidou.mybatisplus.extension.plugins.inner.DataPermissionIntercepto
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import com.youlai.boot.plugin.mybatis.MyDataPermissionHandler;
import com.youlai.boot.plugin.mybatis.MyMetaObjectHandler;
import org.apache.ibatis.mapping.DatabaseIdProvider;
import org.apache.ibatis.mapping.VendorDatabaseIdProvider;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import java.util.Properties;
/**
* mybatis-plus 配置类
*
@@ -57,4 +61,17 @@ public class MybatisConfig {
return globalConfig;
}
/**
* 数据库类型自动识别
*/
@Bean
public DatabaseIdProvider databaseIdProvider() {
DatabaseIdProvider databaseIdProvider = new VendorDatabaseIdProvider();
Properties properties = new Properties();
properties.setProperty("DM", "dm");
properties.setProperty("MySQL", "mysql");
databaseIdProvider.setProperties(properties);
return databaseIdProvider;
}
}