MybatisPlus

BaseMapper 中的CRUD方法

MybatisPlus 实现无sql进行CRUD的基础是接口继承BaseMapper

  1. Integer insert(T var1)
    数据插入,进行插入操作时,默认对每个字段进行了非空判断,只对非空字段进行操作。

  2. Integer insertAllColumn(T var1)
    如果想进行全字段更新,就可以使用此方法。

  3. Integer updateById(@Param("et") T var1)
    数据更新,默认会对每个字段进行非空判断,只对非空字段进行操作。

  4. Integer updateAllColumnById(@Param("et") T var1)
    如果需要进行全字段更新,就使用该方法。

  5. List<T> selectPage(RowBounds var1, @Param("ew") Wrapper<T> var2)
    进行分页查询,只能查询到数据,没有其他分页信息

List<EmployeeEntity> employeeEntities = employeeDao.selectPage(new Page<>(1, 10), new EntityWrapper<>());

返回分页信息和数据

Page<EmployeeEntity> page = new Page<>(Integer.parseInt(params.get("page").toString()), Integer.parseInt(params.get("limit").toString()));
page.setRecords(this.baseMapper.selectPage(page, new EntityWrapper<>()));
return new PageUtils(page);

人人开源项目中默认生成的分页查询

Page<EmployeeEntity> page = this.selectPage(
        new Query<EmployeeEntity>(params).getPage(),
        new EntityWrapper<EmployeeEntity>()
);
return new PageUtils(page);
  1. 自定义sql分页查询
    service
public PageUtils selectByPage(Map<String, Object> params, int age) {
    Page<EmployeeEntity> page = new Query<EmployeeEntity>(params).getPage();
    page.setRecords(this.baseMapper.selectByPage(page, age));
    return new PageUtils(page);
}

dao

List<EmployeeEntity> selectByPage(Pagination page, @Param("age") int age);

xml

<select id="selectByPage" resultType="io.renren.modules.app.entity.EmployeeEntity">
    select * from employee where age = #{age}
</select>
posted @ 2018-06-25 18:11  Godfunc  阅读(890)  评论(0编辑  收藏  举报