mybatis-plus 如何使用 “执行 SQL 分析打印插件“ p6spy 项目带简单的增删改查功能

    技术2022-07-10  114

      新公司入职一个月了,一直没有时间写贴子,抽点时间写了一个使用mybatis-plus如何查看sql语句和执行sql用的时间,废话有点多 看代码吧。

    使用第三方p6spy插件需要mybatis-plus版本在3.2.0以上才可以我用的是3.3.1版本

    1.导入pom相关依赖 <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.1</version> </dependency> <!--执行 SQL 分析打印插件--> <dependency> <groupId>p6spy</groupId> <artifactId>p6spy</artifactId> <version>3.8.1</version> </dependency> <!--mybatis-plus代码生成器--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.1</version> </dependency> 2.修改 application.yml ### 默认配置如下 spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf8&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=GMT+8&tinyInt1isBit=true username: root password: admin ### 修改配置如下 spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver url: jdbc:p6spy:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf8&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=GMT+8&tinyInt1isBit=true 3.在项目的resources下添加"spy.properties" p6spy的位置文件 modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory # 自定义日志打印 logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger #日志输出到控制台 appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger # 使用日志系统记录 sql #appender=com.p6spy.engine.spy.appender.Slf4JLogger # 设置 p6spy driver 代理 deregisterdrivers=true # 取消JDBC URL前缀 useprefix=true # 配置记录 Log 例外,可去掉的结果集有error,info,batch,debug,statement,commit,rollback,result,resultset. excludecategories=info,debug,result,commit,resultset # 日期格式 dateformat=yyyy-MM-dd HH:mm:ss # 实际驱动可多个 #driverlist=org.h2.Driver # 是否开启慢SQL记录 outagedetection=true # 慢SQL记录标准 2 秒 outagedetectioninterval=2 4.执行查询接口 控制台会显示如下代码 Consume Time:20 ms 2020-06-30 09:26:25 Execute SQL:SELECT ID, NAME, AGE, SEX, date_format( INPUT_DATE, '%Y-%c-%d %h:%i:%s' ) inputDate FROM student where 1=1 LIMIT 10

    项目地址:https://github.com/gaohechao1/mybatis-plus.git;带简单的增删改查功能

     

    Processed: 0.244, SQL: 11