一 .概述
之前很多时候自己是挺不喜欢mybatis-plus的,但是在做业务代码的时候,发现即使使用了一些封装器之后,依然不能很好的解决单表的crud.
其实,单表的crud在代码之后出现的频度是最高的,因此抽出一定的时候学习一下mybatis-plus.
二 .环境的搭建
标准的spring环境,唯一的区别就是使用com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean替换之前mybatis提供的SqlSessionFactoryBean.
下面我们首先展示一下我们的VO对象.
@Data @TableName("sys_user") public class User { @TableId(value="id",type=IdType.AUTO) private Integer id; @TableField("last_name") private String lastName; private Integer gender; private Integer age; }
上面的注解会在后面介绍一下的.其实看名字大约也能知道这些注解的作用是什么的.
在mybatis之中,我们的Mapper接口需要继承一下BaseMapper接口,这样我们就能获得一些简单的CRUD的方法了,这些方法在我们的项目中使用的很多.
public interface SysUserMapper extends BaseMapper<User>{ }
下面测试一下我们的环境:
@Test public void insert() { User user = User.builder().lastName("trek"). gender(1).age(12).build(); int result = userMapper.insert(user); System.out.println(result); }
很简单的,我们就插入了一条数据,sql的生成是mp框架帮助我们生成的.
三.常用的注解
我们在我们的VO对象之中使用了几个注解,下面我们来解释一下这几个注解.
@TableName --- 完成VO对象到表名之间的映射关系.
@TableId ---- 主键生成策略
@TableField----属性和字段的映射,这个也非常容易理解.
在上面我们就看到了我们使用mp的基本功能了.