通用mapper的常用查询,select和selectByPrimaryKey

通用mapper 的查询总结

1.如果是等值查询

根据其主键查询,则可以用selectByPrimaryKey()

如果不是主键,而是根据其他值查询,那么用select(T t)

T为通用mapper对应的类类型,这里传入一个该类的实例,根据改实例去匹配对应字段相同的返回。

eg:

 User user=new User();
 user.setName("name1");
 user.setAge(12);
 List<User> users= this.userMapper.select(user);

userMapper.select(user);//查找name姓名为name1,年龄为12 的user

2.如果是模糊查询,则用select(Example),eg:

// 初始化example对象
Example example = new Example(User.class);
Example.Criteria criteria = example.createCriteria();
//设置筛选条件
criteria.andLike("name", "%" + key + "%").orEqualTo("firstChar", key);  
//设置排序
example.setOrderByClause(sortBy + " " + (desc ? "desc" : "asc"));
//开始查询
List<User> users = this.userMapper.selectByExample(example);

3.特殊的,一次根据多个主键id查询多个对象,SelectByIdListMapper

首先要在mapper接口出增加SelectByIdListMapper<Category,Long>:

public interface CategoryMapper extends Mapper<Category> ,SelectByIdListMapper<Category,Long>{

然后,在具体使用的service中,通过selectByIdList(ids)就可以查询得到数据了.

List<User> users = this.userMapper.selectByIdList(ids);
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值