mybatis-plus配置⽂件
mybatis-plus:
# 如果是放在src/main/java⽬录下 classpath:/com/yourpackage/*/mapper/*l
# 如果是放在resource⽬录 classpath:/mapper/*l
mapper-locations: classpath:/mapper/*l
#实体扫描,多个package⽤逗号或者分号分隔
typeAliasesPackage: com.ity
global-config:
#主键类型 0:"数据库ID⾃增", 1:"⽤户输⼊ID",2:"全局唯⼀ID (数字类型唯⼀ID)", 3:"全局唯⼀ID UUID";
id-type:0
#字段策略 0:"忽略判断",1:"⾮ NULL 判断"),2:"⾮空判断"
field-strategy:2
#驼峰下划线转换
db-column-underline:true
#mp2.3+ 全局表前缀 mp_
#table-prefix: mp_
#刷新mapper 调试神器
refresh-mapper:true
#数据库⼤写下划线转换
#capital-mode: true
#逻辑删除配置(下⾯3个配置)
logic-delete-value:4
logic-not-delete-value:0
configuration:
# 这个配置会将执⾏的sql打印出来,在开发或测试的时候可以⽤
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
#配置返回数据库(column下划线命名&&返回java实体是驼峰命名),⾃动匹配⽆需as(没开启这个,SQL需要写as: select user_id as userId)map-underscore-to-camel-case:true
cache-enabled:false
#配置JdbcTypeForNull, oracle数据库必须配置
jdbc-type-for-null:'null'
@Configuration
@MapperScan("com.seawaterbt.ssm.mapper*")
public class MyBatiesPlusConfiguration {
/*
* 分页插件,⾃动识别数据库类型
* 多租户,请参考官⽹【插件扩展】
*/
@Bean
public PaginationInterceptor paginationInterceptor(){
PaginationInterceptor paginationInterceptor =new PaginationInterceptor();
// 开启 PageHelper 的⽀持
paginationInterceptor.setLocalPage(true);
return paginationInterceptor;
}
/
**
* SQL执⾏效率插件
*/
@Bean
@Profile({"dev","qa"})// 设置 dev test 环境开启
public PerformanceInterceptor performanceInterceptor(){
PerformanceInterceptor performanceInterceptor =new PerformanceInterceptor();
performanceInterceptor.setMaxTime(1000);
performanceInterceptor.setFormat(true);
return performanceInterceptor;
}
@Bean(name ="db1")
@ConfigurationProperties(prefix ="spring.datasource.druid.db1")
public DataSource db1(){
public DataSource db1(){
ate().build();
}
@Bean(name ="db2")
@ConfigurationProperties(prefix ="spring.datasource.druid.db2")
public DataSource db2(){
ate().build();
}
/
**
* 动态数据源配置
* @return
*/
@Bean
@Primary
public DataSource multipleDataSource(@Qualifier("db1") DataSource db1,@Qualifier("db2") DataSource db2){
MultipleDataSource multipleDataSource =new MultipleDataSource();
Map< Object, Object > targetDataSources =new HashMap<>();
targetDataSources.put(Value(), db1);
targetDataSources.put(Value(), db2);
//添加数据源
multipleDataSource.setTargetDataSources(targetDataSources);
//设置默认数据源
multipleDataSource.setDefaultTargetDataSource(db1);
return multipleDataSource;
}
@Bean("sqlSessionFactory")
public SqlSessionFactory sqlSessionFactory()throws Exception {
MybatisSqlSessionFactoryBean sqlSessionFactory =new MybatisSqlSessionFactoryBean();
sqlSessionFactory.setDataSource(multipleDataSource(db1(),db2()));
//sqlSessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:/mapper/*/*l"));
MybatisConfiguration configuration =new MybatisConfiguration();
//configuration.setDefaultScriptingLanguage(MybatisXMLLanguageDriver.class);
configuration.setJdbcTypeForNull(JdbcType.NULL);
configuration.setMapUnderscoreToCamelCase(true);
configuration.setCacheEnabled(false);
sqlSessionFactory.setConfiguration(configuration);
sqlSessionFactory.setPlugins(new Interceptor[]{//PerformanceInterceptor(),OptimisticLockerInterceptor()
paginationInterceptor()//添加分页功能
});
//sqlSessionFactory.setGlobalConfig(globalConfiguration());
Object();
}
/*@Bean分页查询插件
public GlobalConfiguration globalConfiguration(){
GlobalConfiguration conf =new GlobalConfiguration(new LogicSqlInjector());
conf.setLogicDeleteValue("-1");
conf.setLogicNotDeleteValue("1");
conf.setIdType(0);
//conf.setMetaObjectHandler(new MyMetaObjectHandler());
conf.setDbColumnUnderline(true);
conf.setRefresh(true);
return conf;
}*/
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论