springboot-集成MySQL+druid+mybatis-plus总结

springboot-集成MySQL+druid+mybatis-plus总结 

目录

springboot-集成MySQL+druid+mybatis-plus总结 

一、摘要:

编写本文的目的

基本jar包依赖引入

配置总结

二、正文

    1.目的:

    2.jar包引入 

    3.基本配置

    4.集成分页插件 



一、摘要:

  1. 编写本文的目的

  2. 基本jar包依赖引入

  3. 配置总结

二、正文

    1.目的:

   带领一个新团队从0-1做一个项目,以springboot为核心来搭建架构。在制定规范的过程中我发现大家在使用过程比较乱,怎么写的都有,借此机会写一个规范总结。

    2.jar包引入 

<!--spring-boot-web依赖-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--mysql驱动依赖-->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
<!--mybatis-plus依赖-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.1</version>
</dependency>
<!--druid数据库连接池依赖-->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.2.3</version>
</dependency>

总结:

  • 由于引入的是druid-spring-boot-starter,会自动添加druid的依赖,所以并不需要单独再额外引入。

  • 这不是唯一方法,这样用是为简化pom文件,以最小的配置干最大的事,也是了后面配置文件风格的统一,一句话就是做一个团队规范。

  • 也可以给码友们一个参考,不在云里雾里。

    3.基本配置

#服务端口
server.port=8888

#JDBC基本配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.url=jdbc:mysql://localhost:3306/amsds_fifa?&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root123
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

#连接池补充配置
spring.datasource.druid.initial-size=5
spring.datasource.druid.max-active=10

总结:

  • driver-class使用cj.jdbc.Driver,配置url时要带上时区参数serverTimezone。cj是mysql6以后的驱动,这里需要注意下MySQL驱动的版本。

  • 对应依赖的引入,在配置文件中可以统一成spring.datasource.druid.*风格,这样在转yml的格式时在一个层级

  • 另外在集成他技术的时候,推荐跟springboot配套的starter,这样可以做到代码风格和技术的统一,不推荐单独引入。

    4.集成分页插件 

@Configuration
public class MybatisPlusConfiguration {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        //声明插件拦截器
        MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
        //声明分页插件
        PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
        //添加到插件拦截器中
        mybatisPlusInterceptor.addInnerInterceptor(paginationInnerInterceptor);
        return mybatisPlusInterceptor;
    }

}

总结:

  • 首先吐槽mybatis-plus的代码中没有Javadoc,其次文档说的不明确,新老版本变化也没有明确说明,这样会造成开发者容易入坑。
  • 老的废除的方法PaginationInterceptor可以直接按文档可以使用,但是高版本废弃了。
  • 分页的原理还是依赖limit,这样的分页还是有问题的,容易丢数据

最后,欢迎大家关注我的个人公众号,我会把经历分享出来,助你了解圈内圈外事。

同时也欢迎大家添加个人微信【shishuai860505】,我拉大家进我的读者交流群。

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帅哥趣谈

请帅哥抽根烟

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值