随笔分类 - MyBatis-Plus
MyBatisPlus分页查询
摘要:MyBatis Plus自带分页插件,只要简单的配置即可实现分页功能 配置类中添加@Bean配置 /** * 分页插件 */ @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInter
阅读全文
MyBatisPlus实现乐观锁
摘要:1.在表添加字段作为版本号,在表对应实体类添加版本号属性 2.在实体类进行版本号操作属性上面添加注解 @Version private Integer version; 3.配置乐观锁插件 @Configuration @MapperScan("com.atguigu.demomptest.mapp
阅读全文
MyBatisPlus自动填充
摘要:MP中有自动填充,可以达到和set方法一样的功能 通过自动填充,实现插入记录时为createTime赋值、修改记录时自动为updateTime赋值, @Data public class User { private Long id; private String name; private Int
阅读全文
QueryWrapper
摘要:组装查询条件 组装排序条件 组装删除条件 使用QueryWrapper实现修改功能 a>例1:组装查询条件 //查询用户名包含a,年龄在20到30之间,并且邮箱不为null的用户信息 @Test public void test1(){ QueryWrapper<User> queryWrapper
阅读全文
@TableLogic
摘要:物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除的数据 逻辑删除:假删除,将对应数据中代表是否被删除字段的状态修改为“被删除状态”,之后在数据库中仍旧能看到此条数据记录 使用场景:可以进行数据恢复 step1:数据库中创建逻辑删除状态列,设置默认值为0 step2:实体类中添加逻
阅读全文
@TableField
摘要:MP中的默认规则,字段会自动转换为相应的驼峰 @Tablefield是用来指定属性对应的字段名 @Data @TableName("t_user") public class User { @TableId(value = "uid",type = IdType.ASSIGN_ID) private
阅读全文
@TableId
摘要:@TableId的使用 @TableId的value属性 @TableId的type属性 通过全局配置配置主键生成策略 进行插入操作 @Test public void test(){ User user = new User(); user.setName("张三"); user.setAge(2
阅读全文
@TableName
摘要:在MyBatisPlus中,我们所操纵的表由实体类决定,默认是以小写开头的实体类名字 比如这里的User类,默认操纵的表是user @Data @TableName("t_user") public class User { private Long id; private String name;
阅读全文
MyBatisPlus通用Service接口
摘要:增加和更新以save为前缀 UserService接口: public interface UserService extends IService<User> { } UserServiceImpl: @Service public class UserServiceImpl extends Se
阅读全文
MyBatisPlus自定义增删改查
摘要:MyBatisPlus对MyBatis只做增强,并不改变原有的功能。 仍然可以采用自定义查询: 第一步:配置映射文件的位置 映射文件格式: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org/
阅读全文
BaseMapper接口crud功能
摘要:package com.zhy.mybatisplus_project; import com.zhy.mapper.UserMapper; import com.zhy.pojo.User; import org.junit.jupiter.api.Test; import org.springf
阅读全文
创建mapper接口并扫描
摘要:MyBatisPlus为我们提供了通用的mapper和通用的service,只需要通过它们我们就能快速地实现对单表的增删改查。 1.springboot使用MyBatisPlus的时候,一定要设置mapper接口所在的包和映射文件所在的包。 因为mapper接口会动态生成其对应的实现类,如果不加@M
阅读全文