springboot整合mybatis-plus

一,整合步骤

1,创建springboot项目

2,添加依赖包(本例以maven为例)

 <!--mybatis-plus-->
 <dependency>
     <groupId>com.baomidou</groupId>
     <artifactId>mybatis-plus-boot-starter</artifactId>
     <version>3.4.3.4</version>
  </dependency>
  
  <!--mybatis-plus-generator-->
  <dependency>
     <groupId>com.baomidou</groupId>
     <artifactId>mybatis-plus-generator</artifactId>
     <version>3.5.1</version>
  </dependency>
  
  <!-- mybatis-plus-generator模版依赖 -->
  <dependency>
     <groupId>org.freemarker</groupId>
     <artifactId>freemarker</artifactId>
     <version>2.3.28</version>
  </dependency>
  
  <!--mysql -->
  <dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <scope>runtime</scope>
  </dependency>
  
  <!-- lombok -->
  <dependency>
     <groupId>org.projectlombok</groupId>
     <artifactId>lombok</artifactId>
  </dependency>

3,下载mybatis-plus-generator项目,地址:https://github.com/baomidou/generator/,下载完后导入工程中运行,浏览器中访问:http://localhost:8849,效果如下:

11.png

4,在上述界面中填写数据库配置、包名配置、实体类配置,输出路径等,然后点击发布即可生成controller、service、model、dao、mapper,如图所示:

!
22.png

5,将生成的model、mapper等文件引入工程中

6,使用分页插件

@Configuration
@MapperScan("com.example.mybatisplusdemo.mapper.*.mapper*")
public class MybatisPlusConfig {
    // 最新版
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}

7,创建数据库

8,单元测试CRUD,如果成功即表示整合成功。

9,mybatis-plus参考文档:https://baomidou.com/pages/24112f/

二,扩展

  • 简介: mybatis-plus提供了很多有用的扩展功能,如:通用枚举、自动填充、字段类型处理器、执行sql分析打印等,这里以sql分析打印为例,当项目中引入该功能后可以完美的打印sql及sql执行时长,可以有效的找出慢查询语句,对提高项目性能很有帮助。

  • 引入sql分析打印步骤:

  • 1,添加maven依赖

 <!--sql分析打印-->
 <dependency>
     <groupId>p6spy</groupId>
     <artifactId>p6spy</artifactId>
     <version>3.9.1</version>
 </dependency>
  • 2,application.properties添加配置
spring.datasource.driver-class-name=com.p6spy.engine.spy.P6SpyDriver
spring.datasource.url=jdbc:p6spy:mysql://192.168.12.80:3306/duijintong?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
spring.datasource.username=admin
...
  • 3,添加spy.properties 配置
#3.2.1以上使用
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory
#3.2.1以下使用或者不配置
#modulelist=com.p6spy.engine.logging.P6LogFactory,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, 控制台效果


    33.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容