最近在学习MybatisPlus是总结了一些常见的方法,记录下来方便之后使用:

BaseMapper源码展示:

public interface BaseMapper{/***

* 根据 ID 查询

*

*

*@paramid 主键ID*/T selectById(Serializable id);/***

* 查询(根据ID 批量查询)

*

*

*@paramidList 主键ID列表(不能为 null 以及 empty)*/List selectBatchIds(@Param(Constants.COLLECTION) Collection extends Serializable>idList);/***

* 查询(根据 columnMap 条件)

*

*

*@paramcolumnMap 表字段 map 对象*/List selectByMap(@Param(Constants.COLUMN_MAP) MapcolumnMap);

}

1.根据ID查询实体类信息,例如:

@Testpublic voidselectById(){

User user= userMapper.selectById(1088250446457389058L);

System.out.println(user);

}

结果:

User(id=1088250446457389058, name=李艺伟, age=28, email=lyw@baomidou.com, managerId=1088248166370832385, createTime=2019-02-14T08:31:16, remark=null)

2.根据ID批量查询,例如:

@Testpublic voidselectIds(){

List idList = Arrays.asList(1088248166370832385L,1094592041087729666L,1094590409767661570L);

List userList =userMapper.selectBatchIds(idList);

userList.forEach(System.out :: println);

}

结果:

User(id=1088248166370832385, name=王天风, age=25, email=wtf@baomidou.com, managerId=1087982257332887553, createTime=2019-02-05T11:12:22, remark=null)

User(id=1094590409767661570, name=张雨琪, age=31, email=zjq@baomidou.com, managerId=1088248166370832385, createTime=2019-01-14T09:15:15, remark=null)

User(id=1094592041087729666, name=刘红雨, age=32, email=lhm@baomidou.com, managerId=1088248166370832385, createTime=2019-01-14T09:48:16, remark=null)

3.根据 columnMap 条件查询,例如:

@Testpublic voidselectByMap(){//map.put("name","王天风")//map.put("age",30)//where name="王天风" and age=30

Map columnMap = new HashMap<>();//columnMap.put("name","王天风");//列age为数据库中的列名,不是实体类中的属性名

columnMap.put("age",27);

List userList =userMapper.selectByMap(columnMap);

userList.forEach(System.out::println);

}

结果:

User(id=1212614062686031873, name=向南, age=27, email=xn@baomidou.com, managerId=1088248166370832385, createTime=2020-01-02T13:58:16, remark=null)

User(id=1212615304313184258, name=向东, age=27, email=xd@baomidou.com, managerId=1088248166370832385, createTime=2020-01-02T14:03:12, remark=null)

User(id=1212616053072060417, name=向西, age=27, email=xx@baomidou.com, managerId=1088248166370832385, createTime=2020-01-02T14:06:10, remark=null)

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐