1.什么是MybatisX?

MybatisX 是一款基于 IDEA 的快速开发插件,方便在使用mybatis以及mybatis-plus开始时简化繁琐的重复操作,提高开发速率。

Spring Boot + MybatisX = 王炸!!_User

2.使用MybatisX的好处

  • 节省大量持久层代码开发时间
  • 强大的功能为业务编写提供各类支持
  • 配置简单,告别各类复杂的配置文件

3.如何使用MybatisX?

1.创建一个简单的数据库

Spring Boot + MybatisX = 王炸!!_User_02

2.创建一个简单的Springboot工程

Spring Boot + MybatisX = 王炸!!_数据库_03

3.在pom.xml文件中引入mybatis-plus依赖

<!--mybatisPlus-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.1</version>
</dependency>

推荐一个开源免费的 Spring Boot 最全教程:

https://github.com/javastacks/spring-boot-best-practice

4.在File->Settings->Plugins下载MybatiX插件

Spring Boot + MybatisX = 王炸!!_数据库_04

5.两下SHIFT键搜索database进入数据库

Spring Boot + MybatisX = 王炸!!_数据库_05

6.新建Mysql连接

Spring Boot + MybatisX = 王炸!!_数据库_06

输入用户、密码及数据库名

Spring Boot + MybatisX = 王炸!!_数据库_07

Test Connection时会提示这么一段话:这是时区未设置问题

Spring Boot + MybatisX = 王炸!!_User_08

根据提示来到Advanced,找到severTimezone,将其设置为GMT(Greenwich Mean Time格林尼治标准时间)

Spring Boot + MybatisX = 王炸!!_数据库_09

此时再测试连接会发现已经成功

Spring Boot + MybatisX = 王炸!!_User_10

这时候我们就可以看见我们想要连接的数据库和其对应的表等信息了

Spring Boot + MybatisX = 王炸!!_User_11

右键对应的表,我们可以看到MybatiX-Generator

Spring Boot + MybatisX = 王炸!!_数据库_12

点击后我们会看到这样一个页面,我们可以在这个页面中设置需要消除的前后缀、文件存放目录等...

Spring Boot + MybatisX = 王炸!!_User_13

点击Next,在下面是一些配置,我们勾选Mybatis-Plus的最新版本Mybatix-Plus 3 和 简化开发的Lombok

Spring Boot + MybatisX = 王炸!!_spring_14

点击Finish,我们可以看到MybatisX为我们自动生成了该表对应的实体类、Mapper文件、Service和相对应的接口

Spring Boot + MybatisX = 王炸!!_spring_15

在yaml中对数据库进行配置:

application.yaml

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/user?characterEncoding=utf-8&useSSL=false&serverTimezone=GMT
    username: root
    password: password

控制层编写方法,使用到Mybatis-Plus中的条件构造器:

package com.example.mybatixtest.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.mybatixtest.pojo.User;
import com.example.mybatixtest.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TestController {

    @Autowired
    UserService userService;

    @GetMapping("/test")
    public User test(){
        QueryWrapper<User> userQueryWrapper = new QueryWrapper<>();
        userQueryWrapper.eq("user_id",1);
        User user = userService.getOne(userQueryWrapper);
        return user;
    }

}

访问成功

Spring Boot + MybatisX = 王炸!!_spring_16

至此,MybatiX整合springboot的简单配置结束!!