1)先构建项目,具体看上2章的操作
spring与Mybatis-plus集成
springboot与Mybatis-plus集成
2)在user实体类继承Model
//防止基础Model与Data冲突,使Model的方法被Data覆盖掉
(callSuper=false)
(value="sys_user")//建立User.class和数据库表sys_user的关系
//继承Model可以实现AR操作
public class User extends Model<User> implements Serializable{
private static final long serialVersionUID=1L;
//@TableId(value="userId")//代表他是主键,且value为表中的名称
private Integer id;
//@TableField(value="user_name")
private String name;
private String address;
private Date birth;
//如果数据库表没有该字段时,orm映射可以忽略该字段,否则映射时报错
(exist=false)
private String sex;
}
3)加载Page的Bean
方式1:直接在Config类配置Bean
(basePackages={"com.demo.mapper"})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
public PaginationInterceptor paginationInterceptor(){
return new PaginationInterceptor();
}
}
方式2:自定义Mybatis-plus的config类,配置page的Bean
//由于已经有Config配置对象,而@ConditionalOnClass则表示为该类为候选Config,在原Config查不到时会到这个Config查询
(value={PaginationInterceptor.class})
public class MybatisPlusConfig {
public PaginationInterceptor paginationInterceptor(){
return new PaginationInterceptor();
}
}
4)编写测试类
SpringRunner.class)(
public class ApplicationTest {
private UserMapper userMapper;
public void testAR(){
User user=new User();
user.setId(1);
user.selectById();
System.out.println(user);
user.setBirth(new Date());
user.updateById();
//分页
IPage<User> page =new Page<User>(1,5);
user.selectPage(page, null);
List<User> users = page.getRecords();
}
}