springboot快速集成mybatis-plus的详细教程

2025-05-29 0 85

简介
Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。这是官方给的定义,关于mybatis-plus的更多介绍及特性,可以参考mybatis-plus官网。那么它是怎么增强的呢?其实就是它已经封装好了一些crud方法,我们不需要再写xml了,直接调用这些方法就行,就类似于JPA。

springBoot快速集成mybatis-plus

一、pom文件引入mybatis-plus依赖

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31
<dependencies>

<!--web-->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<!--lombok-->

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<optional>true</optional>

</dependency>

<!--mysql驱动-->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.25</version>

</dependency>

<!--mybatis-plus-->

<dependency>

<groupId>com.baomidou</groupId>

<artifactId>mybatis-plus-boot-starter</artifactId>

<version>3.1.0</version>

</dependency>

<!---test-->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependency>

</dependencies>

注: 这里最主要的是mybatis-plus-boot-starter依赖,其他依赖都是基本的

二、基础配置 application.properties

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20
#mysql数据库

spring.datasource.url= jdbc:mysql://127.0.0.1:3306/springbootdemo?characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=GMT%2B8

spring.datasource.username= root

spring.datasource.password= 111111

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

#mybatis

#开启驼峰

mybatis.configuration.map-underscore-to-camel-case=true

#打印日志

mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

#mybatis-plus配置

mybatis-plus.mapper-locations=classpath*:/mappers/*.xml

#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";

mybatis-plus.global-config.id-type=0

#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"

mybatis-plus.global-config.field-strategy= 1

#驼峰下划线转换

mybatis-plus.global-config.db-column-underline=true

三、MybatisPlusConfig

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16
/**

* MybatisPlus配置类

*/

@EnableTransactionManagement

@Configuration

@MapperScan(basePackages = "com.example.demo.mapper")

public class MybatisPlusConfig {

/**

* 分页插件

*/

@Bean

public PaginationInterceptor paginationInterceptor() {

return new PaginationInterceptor();

}

}

四、测试

实体类 主键使用@TableId(value = "id",type = IdType.AUTO)指定类型
@TableField(exist = false):表示该属性不为数据库表字段,但又是必须使用的。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36
@Data

public class SysUser implements Serializable {

private static final long serialVersionUID = 1L;

/**

* 主键

*/

@TableId(value = "id",type = IdType.AUTO)

private Integer id;

/**

* 用户名

*/

private String username;

/**

* 密码

*/

private String password;

/**

* 电话

*/

private String phone;

/**

* 邮箱

*/

private String email;

/**

* 创建时间

*/

private Date createDate;

/**

* 更新时间

*/

private Date updateDate;

/**

* sys_user

*/

}

新建SysUserMapper继承 BaseMapper

?

1

2
public interface SysUserMapper extends BaseMapper<SysUser> {

}

测试

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26
@Autowired

private SysUserMapper sysUserMapper;

/**

* 插入

*/

@Test

public void insert() {

SysUser sysUser=new SysUser();

sysUser.setPhone("18787878787");

sysUser.setPassword("123456");

sysUser.setUsername("root");

sysUser.setCreateDate(new Date());

sysUser.setUpdateDate(new Date());

sysUserMapper.insert(sysUser);

}

/**

* 分页查询

*/

@Test

public void selectByPage() {

Page<SysUser> page=new Page(1,1);

IPage p= sysUserMapper.selectPage(page,new QueryWrapper<SysUser>().eq("password","123456"));

System.out.println(p.getRecords());

}

分页一般使用

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16
List<ApiLogVO> getCallLogList(ApiLogDTO dto, Page page); mapper

IPage<ApiLogVO> getCallLogList(ApiLogDTO dto); IService

serviceImpl

@Override

public IPage<ApiLogVO> getCallLogList(ApiLogDTO dto) {

Page<ApiLogVO> page=new Page(dto.getCurrent(),dto.getSize());

List<ApiLogVO>list= apiLogMapper.getCallLogList(dto,page);

page.setRecords(list);

return page;

}

controller

@PostMapping("/call/log")

@ApiOperation("api调用日志列表")

public IPage<ApiLogVO> callLog(@ModelAttribute ApiLogDTO dto){

return sysService.getCallLogList(dto);

}

附上目录结构

springboot快速集成mybatis-plus的详细教程

总结

到此这篇关于springboot快速集成mybatis-plus的详细教程的文章就介绍到这了,更多相关springboot集成mybatis-plus内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!

原文链接:https://blog.csdn.net/qq_37209293/article/details/93617460

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 springboot快速集成mybatis-plus的详细教程 https://www.kuaiidc.com/117586.html

相关文章

发表评论
暂无评论