mybatis select 结果集是 map 写法
2016-12-15 00:00
190 查看
<select id="selectPerson" parameterType="int" resultType="hashmap"> SELECT * FROM PERSON WHERE ID = #{id} </select>
这个语句被称作 selectPerson,接受一个 int(或 Integer)类型的参数,并返回一个 HashMap 类型的对象,其中的键是列名,值便是结果行中的对应值。
如果是简单的 返回,就可以不用写 结果集 resultMap 对象了。
更多使用参考mybatis 中文文档;
http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html
或者是 :
<select id="selectUsers" resultType="map"> select id, username, hashedPassword from some_table where id = #{id} </select>
这样一个语句简单作用于所有列被自动映射到 HashMap 的键上,这由 resultType 属性 指定。这在很多情况下是有用的,但是 HashMap 不能很好描述一个领域模型。那样你的应 用程序将会使用 JavaBeans 或 POJOs(Plain Old Java Objects,普通 Java 对象)来作为领域 模型。MyBatis 对两者都支持。看看下面这个 JavaBean:
package com.someapp.model; public class User { private int id; private String username; private String hashedPassword; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getHashedPassword() { return hashedPassword; } public void setHashedPassword(String hashedPassword) { this.hashedPassword = hashedPassword; } }
基于 JavaBean 的规范,上面这个类有 3 个属性:id,username 和 hashedPassword。这些 在 select 语句中会精确匹配到列名。
这样的一个 JavaBean 可以被映射到结果集,就像映射到 HashMap 一样简单。
<select id="selectUsers" resultType="com.someapp.model.User"> select id, username, hashedPassword from some_table where id = #{id} </select>
这样就不需要些resultMap 了。
这些情况下,MyBatis 会在幕后自动创建一个 ResultMap,基于属性名来映射列到 JavaBean 的属性上。如果列名没有精确匹配,你可以在列名上使用 select 字句的别名(一个 基本的 SQL 特性)来匹配标签。比如:
<select id="selectUsers" resultType="User"> select user_id as "id", user_name as "userName", hashed_password as "hashedPassword" from some_table where id = #{id} </select>
相关文章推荐
- Hibernate 可以用 select new map 查询出结果集 List,里面放一个一个 map。Mybatis 如何查出这样的 list?
- mybatis selectMap方法使用注意事项
- MyBatis的分布查询延迟加载(select_resultMap)
- Mybatis 中返回Map,映射其中列为枚举类型的写法
- 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap
- 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap
- Mybatis 源码学习笔记(八)mapper映射文件配置之select、resultMap
- mybatis-映射器-resultMap结果集映射2-association一对一级联
- mybatis-映射器-resultMap结果集映射3collection一对多级联&鉴别器
- 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap
- MyBatis的ResultMap使用方法,对象关联写法
- Mybatis中resultMap和result结果集的关系
- 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap
- MyBatis传入参数为集合 list 数组 map写法
- MyBatis传入参数为集合 list 数组 map写法
- MyBatis基础篇之映射文件---如何通过select返回Map
- MyBatis传入参数为list、数组、map写法
- 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap
- MyBatis传入参数为list、数组、map写法(转载)
- Mybatis中select记录封装成Map