使用map接收mybatis的返回值,通常为Map<String,Object>或者List<Map<String,Object>>
- key是表字段(类型是String),value是表字段值(类型是Object)
- 查询出来的一行数据会被写到一个Map里面,如果查询出来多行数据,需要用List<Map<String,Object>>
- 取里面的数值
//查询出来的一行数据会被写到一个Map里面
//dao:RANK为mysql里面的关键字必须用``括起来(不管是在select后面还是where后面)
@Select("select * " +
" from T_PAGE_INFO " +
" where TABLEID = #{tableId} and `RANK` = #{rank}" )
Map<String,Object> queryByTableIdAndRank(@Param("tableId") long tableId , @Param("rank") int rank);
//controller方法:获得map里面的key和value,只能遍历
@GetMapping("/queryByTableIdAndRank")
public Map<String,Object> queryByTableIdAndRank(){
Map<String,Object> map = (10000,2);
for (<String, Object> entry : ()) {
(()+":"+());
}
return map;
}
/**:一个map里面的值
{
"ALIGN": "left",
"TABLEID": 10000,
"PROP": "deptName",
"HEADERALIGN": "left",
"REQUIRED": "N",
"LABEL": "部门",
"RANK": 2,
"ISSHOW": "Y"
}
*/
//查询出来多行数据,需要用List<Map<String,Object>>
@Select("select * " +
" from T_PAGE_INFO " +
" where TABLEID = #{tableId} " )
List<Map<String,Object>> queryByTableId(@Param("tableId") long tableId);
@GetMapping("/queryByTableId")
public List<Map<String,Object>> queryByTableId(){
List<Map<String,Object>> map = (10000);
for (Map<String, Object> resultMap : map) {
for (<String, Object> entry : ()) {
(()+":"+());
}
}
return map;
}