springboot+mybatis-plus 两种方式打印sql语句的方法
1.注解方式,yml文件配置上以下就可以直接使用
mybatis-plus: mapper-locations: classpath:mapper/*.xml configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
2.这一种网上没有,搜过好多资料都没有,我是配置多数据源,所以是在代码中写的config那么yml文件就是失效的,只能一个一个配置,到了打印sql的时候,就怎么都是找不到,后来设置的源码找到灵感,发现可以使用,特此记下,方便其他小伙伴遇到同样的问题使用。
@Bean("sqlSessionFactory") public SqlSessionFactory sqlSessionFactory() throws Exception { // 导入mybatissqlsession配置 MybatisSqlSessionFactoryBean sessionFactory = new MybatisSqlSessionFactoryBean(); // 指明数据源 sessionFactory.setDataSource(multipleDataSource(dataSource0(), dataSource1(), dataSource2())); // 指明mapper.xml位置(配置文件中指明的xml位置会失效用此方式代替,具体原因未知) sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:/mapper/**Mapper.xml")); // 指明实体扫描(多个package用逗号或者分号分隔) sessionFactory.setTypeAliasesPackage("gsa.geographic.system.entity"); // 导入mybatis配置 MybatisConfiguration configuration = new MybatisConfiguration(); configuration.setJdbcTypeForNull(JdbcType.NULL); configuration.setMapUnderscoreToCamelCase(true); configuration.setCacheEnabled(false); // 配置打印sql语句 configuration.setLogImpl(StdOutImpl.class); sessionFactory.setConfiguration(configuration); // 添加分页功能 sessionFactory.setPlugins(new Interceptor[]{ paginationInterceptor() }); // 导入全局配置 sessionFactory.setGlobalConfig(globalConfiguration()); return sessionFactory.getObject(); }
主要就是这句
点击setLogImpl看源码,找到Configuration()构造方法,就可以看见了
访问一下看一下控制台
到此这篇关于springboot+mybatis-plus 两种方式打印sql语句的方法的文章就介绍到这了,更多相关springboot+mybatis-plus打印sql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringCloud Gateway HttpWebHandlerAdapter链路调用请求流程介
Spring Cloud Gateway旨在为微服务架构提供一种简单有效的、统一的 API 路由管理方式。Spring Cloud Gateway 作为 Spring Cloud 生态系中的网关,它不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全、监控/埋点和限流等2022-10-10Java之Springcloud Gateway内置路由案例讲解
这篇文章主要介绍了Java之Springcloud Gateway内置路由案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下2021-08-08
最新评论