-
0x01_准备数据库表
-
0x02_创建一个空的 Spring Boot 工程
-
0x03_添加项目依赖
-
0x04_添加配置信息
-
0x05_准备实体类和mapper接口
-
0x06_扫描路径
-
0x07_测试
Mybatis-plus入门
官网:https://baomidou.com/
MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window) 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
介绍官网都有的,在正式开始之前,可以关注一下mybatis-plus的框架图:

0x01_准备数据库表
创建数据库mp,注意编码集要选择utfmb4
创建数据库表的步骤官网有,这里省略

0x02_创建一个空的 Spring Boot 工程

然后填写artifact名称,包名称,java版本等信息

然后需要选择spring boot
版本为2.7.4
(推荐),同时选择2个依赖:一个是Develop Tools
选择Lombok(帮助通过注解生成get/set,构造方法等方法);一个是Web
选择Spring Web



其他依赖可以稍后再加。
然后是项目名称:

创建完成之后,项目结构如下:
0x03_添加项目依赖
官网介绍中有说明添加哪些依赖,只需要在pom.xml
中补上即可。
我根据实际添加,补的是以下依赖:(可能和官网添加的依赖有略微区别,以下依赖的具体版本可以去maven官方中心仓库找)
-
mybatis-plus-boot-starter
-
mysql-connector-java
-
druid
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.31</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.13</version>
</dependency>
如果IDEA 不能自动导入依赖,可以尝试手动导入(maven生命周期—》install即可)
注意:
1.不要用太新的依赖,比如前天才出来的,那如果你的仓库配了镜像站,可能太新的阿里巴巴没有,这样会导致依赖导入失败
2.我还碰到了这样的错误:
Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test (default-test) on project demo: There are test failures.
Please refer to ... for the individual test results.
Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.解决方法是:
在
pom.xml
中加入以下配置:<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>原因是:测试类引起的打包异常问题 所以解决办法是:跳过测试打包。
如果BUILD SUCCESS
之后还是报错,那么建议重启IDEA。(我时常碰到这样的问题)
0x04_添加配置信息
然后需要在application.properties中配置数据源的相关信息(注意修改你的数据库URL,账号,密码等信息)
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mp?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
0x05_准备实体类和mapper接口
实体类User.java
package com.bones.mp.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author : bones
* @version : 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable {
private Integer id;
private String name;
private Integer age;
private String email;
}
mapper接口UserMapper.java
package com.bones.mp.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bones.mp.pojo.User;
/**
* @author : bones
* @version : 1.0
*/
/**
* 注意:MyBatisPlus中的Mapper接口继承自BaseMapper,还要指定实体类
*/
public interface UserMapper extends BaseMapper<User> {
}
0x06_扫描路径
然后需要在SpringBoot项目的启动类上配置Mapper接口的扫描路径

@MapperScan("com.bones.mp.mapper")
0x07_测试
简单在测试类中,查询一下:
在MybatisPlusProApplicationTests
类中进行测试:
package com.bones.mp;
import com.bones.mp.mapper.UserMapper;
import com.bones.mp.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class MybatisPlusProApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
void queryUser() {
List<User> users = userMapper.selectList(null);
users.forEach(System.out::println);
}
}
控制台输出查询结果:

原文始发于微信公众号(小东方不败):MyBatis增强工具-Mybatis-plus
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/47247.html