很多时候提供查询接口只想提供几个字段,虽有定义的实体类,但是会有很多不必要的属性并且值还为null,怎么办呢,可以使用返回 List<Map<String,Object>> 方式。
示例:
接口mapper类中的方法:
List<Map<String,Object>> getUser(); |
Mybatis 中设置 resultType 为 java.util.HashMap:
<select id="getUser" resultType="java.util.HashMap"> SELECT t.user_id AS userId, t.user_name AS userName FROM user_info t </select> |
返回的数据key默认是大写的,解决方式为把AS的字段添加上双引号即可。修改示例:
<select id="getUser" resultType="java.util.HashMap"> SELECT t.user_id AS "userId", t.user_name AS "userName" FROM user_info t </select> |
结果:
[{ "userId": "1100000001", "userName": "张三" }, { "userId": "110000002", "userName": "李四" }] |