您的位置:首页 > 编程语言 > Java开发

SpringBoot和mybatisplus的入门使用

2018-12-27 20:12 633 查看

用mybatisplus的肯定都用过mybatis了,使用mybatisplus话需要一定的mybatis基础

mybatplus简称MP:官方链接

我们先介绍一下mybatisplus,一些理论知识还是挺重要的

特性

  • 无侵入:只做增强不做改变,也就是说我们使用mybatisplus的同时不影响我们使用mybatis
  • 损耗小:启动即会自动注入基本 CURD,MP的内置方法有17中供我们使用
  • 支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题

本章节使用的是SpringBoot环境

1.pom.xml依赖

这个是pom.xml的配置文件,mysql使用的是5.1版本,SpringBoot自带的8.0版本容易出现问题不建议去使用

mybatisplus的依赖随便一个都可以没有具体要求

[code]        <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>

<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.0.6</version>
</dependency>

2.application.properties

下面是application配置文件,每一条都是用了注释这里就不说明了,模板使用的是thymeleaf可以自由选择需要的模板

[code]# 数据库连接配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
spring.datasource.username=root
spring.datasource.password=root

# Hikari
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
#最小连接
spring.datasource.hikari.minimum-idle=5
#最大连接
spring.datasource.hikari.maximum-pool-size=15
#此属性控制从池返回的连接的默认自动提交行为,默认值:true
spring.datasource.hikari.auto-commit=true
#空间连接存活最大时间,默认600000(10分钟)
spring.datasource.hikari.idle-timeout=1800000
#连接池名字
spring.datasource.hikari.pool-name=DatebookHikariCP
#控制池中连接的最大生命周期,值0便是无限证明周期,默认1800000即30分钟
spring.datasource.hikari.max-lifetime=1800000
#数据库连接超时时间,默认30秒,即30000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.connection-test-query=SELECT 1

# mybatis对应的映射文件路径
#mybatis-plus对应的xml
mybatis-plus.mapper-locations=classpath:mapper/*.xml
# mybatis对应的实体类文件
mybatis-plus.type-aliases-package=com.yunhe.mybatisplusdemo.entity

#thymelea模板配置
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8
#热部署文件,页面不产生缓存,及时更新
spring.thymeleaf.cache=false

#在控制台打印SQL语句
logging.level.com.yunhe.mapper=debug

# 错误页,指定发生错误时,跳转的URL。请查看BasicErrorController源码便知
#server.error.path=/templates/error.html

我平常还是喜欢把IDEA的可视化操作MySQL的给连上可以快捷操作还有一些提示一类的方便的功能

3.创建一个User类

这个我们用到了几个注解

  1. @Data 这个是lombok插件的注解,不懂的话后续可能会单独写一篇文章
  2. @TableName 默认value值 输入表的名字
  3. @TableId  value是主键的名字,type 是自增的意思如果不自增不写

4.创建一个UserDao接口

UserDao相对就比较简单了 ,如果写自己的SQL语句和以前一样,只做增强不做改变。

注意:

  1. @Repinsitory 这个注解是Spring的注解 会帮我们反转控制
  2. @Mapper 源码没有具体说明,意思就是每一个Dao接口都要标识一个才可以使用,还有一个@MapperScan可以扫描全部dao层不是我们本章的重点
  3. BaseMapper<User> 我们用到的所有17的方法都是来自与它,泛型<>里面必须要填写一个实体类

5.如果用的话正常使用就行,本章会在Test中测试

最后做一个简单的根据Id查询,

mybatis plus

个人感觉这个东西就是封装了一些SQL,如果不喜欢或者不想用的话可以不用的,还没有强大到离不了

优点已经很明显了帮助我们封装了一些常用的SQL方法,要有一些复杂查询,内置分页。

如果想了解更多的使用方法建议去官方查看一些具体的内容。

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: