mapper查询用法
普通查询:使用方式为实现BaseMapper<T>接口对象调用该方法。
T selectById(Serializable id):使用场景为通过主键查询,只要该主键类型实现了Serialzable接口即可。
List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList):使用场景为通过主键的集合去批量查询,前提主键的类型实现了Serializable接口。传入array
List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String,Object> columnMap):使用场景为传入一个Map集合,key为表字段,value为表字段值。注意:Map的key为数据表的字段名,不是实体类属性名。
@TableName 表
@TableId 主键
@TableField 对应字段
@TableField(exist=false) 排除字段
selectById
MP Map数据结构查询list
map的key是数据库中的列,不是实体类中的field
普通查询:使用方式为实现BaseMapper<T>接口对象调用该方法。
1. T selectById(Serializable id):使用场景为通过主键查询,只要该主键类型实现了Serialzable接口即可。
2、List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList):使用场景为通过主键的集合去批量查询,前提主键的类型实现了Serializable接口。传入array
3、List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String,Object> columnMap):使用场景为传入一个Map集合,key为表字段,value为表字段值。注意:Map的key为数据表的字段名,不是实体类属性名。
selectByid
selectByIds Arrays.asList()
selectByMap 其中的键为列名
普通查询:使用方式为实现BaseMapper<T>接口对象调用该方法。
T selectById(Serializable id):使用场景为通过主键查询,只要该主键类型实现了Serialzable接口即可。
2、List<T> selectBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList):使用场景为通过主键的集合去批量查询,前提主键的类型实现了Serializable接口。
3、List<T> selectByMap(@Param(Constants.COLUMN_MAP) Map<String,Object> columnMap):使用场景为传入一个Map集合,key为表字段,value为表字段值。
注意:Map的key为数据表的字段名,不是实体类属性名。
selectByMap中的map的key存放的是数据库中表的字段名,而非实体名
@TableName
@TableId
@TableField
@TableField(exist=false)
selectByMap参数里的map得key是数据库的列名,不是实体类的属性名。
selectById 普通查询
selectBatchIds 多个值查询 Arrays.asList()
selectByMap 条件查询 Map的key为字段,生成的语句为where name= ? and age=?
普通查询方法:
1、List<T> selectBatch(List<T> ids)
2、List<T> selectByMap(Map<key,value> map)
PS:map中的key为数据库中的列名(如果输入的是实体类中的属性名会报错)、value是列对应的值
selectByMap()
selectBatchIds(@Param(Constants.COLLECTION)Collection<? extends Serializable> idList);
根据id集合获取对象集合list
Arrays.asList(id1,id2)
将list集合参数进行forEach输出:
userList.forEach(System.out::println);
selectById(...id) 根据主键获取实体
这里是表中字段名 不是实体变量名