mybaits 查询返回hashMap 怎么写
时间: 2023-10-06 12:12:25 浏览: 118
MyBatis 支持将查询结果映射成 HashMap 对象,以下是一种常见的方式:
1. 在 Mapper.xml 文件中编写 SQL 语句,使用 resultMap 标签指定返回结果的映射关系:
```xml
<!-- 定义 resultMap 标签 -->
<resultMap id="mapResult" type="java.util.HashMap">
<result column="id" property="id"/>
<result column="name" property="name"/>
<result column="age" property="age"/>
</resultMap>
<!-- 编写 SQL 语句 -->
<select id="selectUser" resultMap="mapResult">
SELECT id, name, age FROM user WHERE id = #{id}
</select>
```
2. 在 Mapper 接口中定义方法,返回值为 HashMap:
```java
HashMap<String, Object> selectUser(int id);
```
这样,当调用 selectUser 方法时,MyBatis 会执行对应的 SQL 语句,将查询结果映射成一个 HashMap 对象并返回。其中,HashMap 的 key 是列名,value 是对应的值。
需要注意的是,如果查询结果有多条记录,则会抛出 TooManyResultsException 异常,因为 HashMap 的 key 必须是唯一的。如果确实需要返回多条记录,可以考虑将查询结果映射成 List<Map<String, Object>> 对象。
阅读全文