常用简单增删查改
增:
xxMapper.insert(xxDO)
删:
xxMapper.delete(new QueryWrapper<xx>().eq("xxx",xxx)...)
查:
注意在主键上加注解表明主键@TableId(“commodity_id”)
xxMapper.selectById("xx")
xxMapper.selectOne(new QueryWrapper<xx>()) //查询单个结果,返回JOBO
xxMapper.selectMaps(new QueryWrapper<xx>()) //查询结果每一行记录都会转成一个Map<String, Object>对象,Map的key对应列名,value对应该列的值
xxMapper.selectList(new QueryWrapper<xx>()) //查询结果以列表形式返回
xxMapper.selectCount(new QueryWrapper<xx>()) //返回查询结果集中的记录数。
改:
update仅修改提供的参数,为提升效率提供的bean尽量只提供需修改的参数
xxMapper.update(null,new UpdateWrapper<xx>().eq(...).set(...)) //参数1为空,参数二为匹配条件(eq==,gt>,ge>=,lt<,le<=,ne!=...)+修改内容(set) xxMapper.update(user,new QueryWrapper<xx>().eq(...)); //参数1非空值为修改内容,参数二为匹配条件 分页: 此处直接举例说明:Page<ForumArticleDO> page = new Page<>(pageNum, PageSize.SIZE15.getSize()); //初始分页配置,第pageNum页,每页15条 QueryWrapper<ForumArticleDO> qw = new QueryWrapper<>(); //查询条件 if(boardId!=null&&boardId!=0) qw.eq("p_board_id",pBoardId); qw.orderByDesc(orderTypeEnum.getOrderSql()); IPage<ForumArticleDO> iPage = articleMapper.selectPage(page,qw.select( ForumArticleDO.class, f->!f.getColumn().equals("content") && !f.getColumn().equals("markdown_content"))); //查询结果排除特定列
得到的IPage即为分页结果,需注意,必须先配置MyBatisPlus分页拦截器,否则IPage无法分页
/** * MyBatisPlus配置类 */ @Configuration public class MyBatisPlusConfig { /** * MyBatisPlus拦截器(用于分页) */ @Bean public MybatisPlusInterceptor paginationInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); //添加MySQL的分页拦截器 interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return interceptor; } }
标签:QueryWrapper,MyBatisPlus,分页,记录,使用,new,eq,xxMapper From: https://www.cnblogs.com/Explosion556/p/17603032.html