SpringBoot2整合MyBatis和mybatisPlus

目录

一、数据源-----配置数据源:(两种)

        (1)数据源的自动配置-HikariDataSource

        (2)alibaba提供的Druid数据源

二、springBoot2整合MyBatis 

第一步:在Maven中添加相关的依赖:(MybatisCodeHelperNew-2.8.9-183-204)插件可以逆向工程直接在idea中plugin中进行安装

 第二步:yml对MyBatis进行配置:相关配置在自动配置类中可以进行查看

第三步:注解开发

第四步:总结

三:SpringBoot2整合MyBatisPlus

   注意、什么是MyBatis-Plus

  第一步:添加maven依赖

第二步:配置yml文件

第三步:所有的mapper接口实现MybatisPlus 提供的BeanMapper接口

四:MyBatisPlus中的常用注解:


目录

一、数据源-----配置数据源:(两种)

        (1)数据源的自动配置-HikariDataSource

        (2)alibaba提供的Druid数据源

二、springBoot2整合MyBatis 

第一步:在Maven中添加相关的依赖:(MybatisCodeHelperNew-2.8.9-183-204)插件可以逆向工程直接在idea中plugin中进行安装

 第二步:yml对MyBatis进行配置:相关配置在自动配置类中可以进行查看

第三步:注解开发

第四步:总结

三:SpringBoot2整合MyBatisPlus

        注意、什么是MyBatis-Plus

        第一步:添加maven依赖

第二步:配置yml文件

第三步:所有的mapper接口实现MybatisPlus 提供的BeanMapper接口


一、数据源-----配置数据源:(两种)

        (1)数据源的自动配置-HikariDataSource

        添加maven依赖:(版本号由SpringBoot自动版本仲裁)hikaricp(富士山)日本提供的数据源

       
            com.zaxxer
            HikariCP
        
       
            mysql
            mysql-connector-java
        

在yml文件中进行配置

spring:
  datasource:
    type: com.zaxxer.hikari.HikariDataSource
    url: "jdbc:mysql://127.0.0.1:3306/2206_shop?serverTimezone=UTC"
    hikari:
      #必须填写
      driver-class-name: "com.mysql.cj.jdbc.Driver"
      username: "root"
      password: "root"
      #最大连接数
      maximum-pool-size: 10
      #最小连接数
      minimum-idle: 5
      #连接池名字
      pool-name: TestHikaricp

        (2)alibaba提供的Druid数据源

    第一步:添加maven的相关启动场景

  
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            2.2.2
        
        
        
            mysql
            mysql-connector-java
        

第二步:配置yml文件

#基于 druid 的连接池
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      url: "jdbc:mysql://127.0.0.1:3306/2206_shop?serverTimezone=UTC"
      username: "root"
      password: "root"
      #最大连接数
      max-active: 10
      #初始化连接数
      initial-size: 3
      #空闲时最小连接数
      min-idle: 5
      #添加过滤器 性能监控、防火墙、日志
      filters: "stat,wall,slf4j"
      #配置监控中心的过滤
      web-stat-filter:
        #打开过滤器
        enabled: true
        #指定过滤请求
        url-pattern: "/*"
        #排除过滤请求
        exclusions: "/druid/**"
        #监控 session 的个数
        session-stat-enable: true
      #配置监控界面
      stat-view-servlet:
        enabled: true
        #访问监控界面的路径
        url-pattern: "/druid/*"
        #一键清空,测试环境中设置为true
        reset-enable: false
        #登录用户名和密码
        login-username: "root"
        login-password: "root"
        #ip地址白名单
        allow: "127.0.0.1"
        #黑名单
        #deny:

二、springBoot2整合MyBatis 

(地址GitHub)MyBatis · GitHub

第一步:在Maven中添加相关的依赖:(MybatisCodeHelperNew-2.8.9-183-204)插件可以逆向工程直接在idea中plugin中进行安装

        
            com.alibaba
            druid-spring-boot-starter
            1.2.12
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            2.2.2
        
        
            mysql
            mysql-connector-java
        

 第二步:yml对MyBatis进行配置:相关配置在自动配置类中可以进行查看

配置 private Configuration configuration; mybatis.configuration下面的所有,就是相当于改mybatis全局配置文件中的值

在配置类中进行mapper接口进行扫描或者在mapper接口上添加@Mapper注解进行注入

#MyBatis配置
mybatis:
  #注册mapper.xml文件
  mapper-locations: "classpath:/mapper/**/*"
  #配置包的别名
  type-aliases-package: "com.qf.ran.mybatis.entity"
  #加载 Mybatis 的配置文件,不建议使用
  #config-location: "classpath:mybatis-config.xml"
  configuration:
    #开启驼峰转换
    map-underscore-to-camel-case: true
    #开启二级缓存,默认为 false
    #cache-enabled: true

第三步:注解开发

(可以不用创建xml配置文件)复杂的sql建议使用xml文件进行开发

@Mapper
public interface CityMapper {

    @Select("select * from city where id=#{id}")
    public City getById(Long id);

    public void insert(City city);

}

第四步:总结

最佳实战:

  • 引入mybatis-starter
  • 配置application.yaml中,指定mapper-location位置即可
  • 编写Mapper接口并标注@Mapper注解
  • 简单方法直接注解方式
  • 复杂方法编写mapper.xml进行绑定映射
  • @MapperScan("com.atguigu.admin.mapper") 简化,其他的接口就可以不用标注@Mapper注解

三:SpringBoot2整合MyBatisPlus

   注意、什么是MyBatis-Plus

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

mybatis plus 官网

建议安装 MybatisX 插件

  第一步:添加maven依赖

        
            com.alibaba
            druid-spring-boot-starter
            1.2.12
        
       <-- 
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            2.2.2
        -->
        
            mysql
            mysql-connector-java
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.5.2

第二步:配置yml文件

#MyBatis plus 配置
mybatis-plus:
  #classpath代表的是根目录,如果xml文件的父目录mapper不是在根目录下,需要该成 classpath*
  #mapper-locations: "classpath*:mapper/**/*.xml"

  #mybatis plus 配置
  global-config:
    db-config:
      #全局的表都会添加前缀
      #需要类中的注解开启 @TableName(keepGlobalPrefix = true)
      #table-prefix: "u_"
      #全局逻辑删除,需要命名规范
      logic-delete-field: "is_delete"
      logic-delete-value: "0"
      logic-not-delete-value: "1"
      #全局雪花算法
      #当服务器重启的时候,会出现一秒的校验时间的过程(时钟回拨),这一秒可能会出现重复的id
      id-type: assign_id

第三步:所有的mapper接口实现MybatisPlus 提供的BeanMapper接口

自动配置

  • MybatisPlusAutoConfiguration 配置类,MybatisPlusProperties 配置项绑定。mybatis-plus:xxx 就是对mybatis-plus的定制
  • SqlSessionFactory 自动配置好。底层是容器中默认的数据源
  • mapperLocations 自动配置好的。有默认值。classpath*:/mapper/**/*.xml;任意包的类路径下的所有mapper文件夹下任意路径下的所有xml都是sql映射文件。 建议以后sql映射文件,放在 mapper下
  • 容器中也自动配置好了 SqlSessionTemplate
  • @Mapper 标注的接口也会被自动扫描;建议直接 @MapperScan("com.atguigu.admin.mapper") 批量扫描就行

优点:MyBatisPlus提供了单表的增删改查 只需要实现BeanMapper就扣就行

四:MyBatisPlus中的常用注解:

        (见MyBatisPlus专栏)

你可能感兴趣的:(Spring-Boot2,mybatis,java,mysql)