Java随笔 | mybatis-plus中条件构造器(QueryWrapper、UpdateWrapper)的基本使用(示例)

文章目录

  • 实体(model)类:图书类型
  • 一、QueryWrapper示例
  • 二、UpdateWrapper示例


本文面向初学者和小白,介绍QueryWrapper和UpdateWrapper的简单使用。
QueryWrapper和UpdateWrapper都是mybatis-plus中Wrapper类的子类,用于构造SQL条件语句,QueryWrapper用于查询语句中,UpdateWrapper用于更新或删除语句中。
注:本文示例基于Springboot框架

实体(model)类:图书类型

// 实体类 图书类型
public class BookType {
    @TableId(value = "type_id", type = IdType.AUTO)
    private Integer typeId;// 类型ID
    private Integer parentId;// 父类型ID
    private String typeName;// 类型名称 例如科幻类...
}

一、QueryWrapper示例

Service层

通过QueryWrapper等效实现以下sql语句
SELECT * FROM book_type WHERE parent_id<>0 AND type_id>4 OR type_id<2

@Service
public class BookTypeServiceImpl extends ServiceImpl<BookTypeDao, BookType> implements BookTypeService {

    @Resource
    private BookTypeDao bookTypeDao;

    // 演示条件查询 使用QueryWrapper<>
    public List<BookType> finds(){
    	// 1.创建条件构造器 泛型为数据库表对应model类
        QueryWrapper<BookType> wrapper = new QueryWrapper<>();
        // 2.设置查询条件:ne不等于 ge大于 or或者 lt小于
        wrapper.ne("parent_id", 0).ge("type_id", 4).or().lt("type_id", 2);
        // 3.使用条件构造器
        List<BookType> bookTypes = bookTypeDao.selectList(wrapper);
        return bookTypes;
    }
}

二、UpdateWrapper示例

Service层

通过UpdateWrapper等效实现以下sql语句
DELETE FROM book_type WHERE type_id=8;

@Service
public class BookTypeServiceImpl extends ServiceImpl<BookTypeDao, BookType> implements BookTypeService {

    @Resource
    private BookTypeDao bookTypeDao;

    // 演示条件删除 使用UpdateWrapper<>
    public Integer wrapperDel(){
    	// 1.创建条件构造器 泛型为数据库表对应model类
        UpdateWrapper<BookType> wrapper = new UpdateWrapper<>();
        // 2.设置查询条件:eq 等于
        wrapper.eq("type_id", 8);
        // 3.使用条件构造器
        Integer rows = bookTypeDao.delete(wrapper);
        return rows;
    }
}

详细用法可参考:mybatis-plus中wrapper的用法

你可能感兴趣的:(Java随笔,mybatis,java,数据库,springboot)