14_输出映射2_resultMap
【resultMap】
如果查询出来的列名和pojo的属性名不一致,通过定义一个resultMap对列名和pojo属性名之间做一个映射列表。
1.定义resultMap,(在UserMapper.xml文件中)
<!--
定义resultMap
将SELECT id _id,username _username,birthday _birthday,address _address和User类中的属性做一个映射
type: resultType最终映射的java对象类型,可以使用别名
id:对resultMap的唯一标示
-->
<resultMap type="user" id="userResultMap">
<!--
id:表示查询结果集中唯一标识
column:查询出来的列名
property:type指定的pojo类型中的属性名
-->
<id column="id_" property="id"/>
<!--
result:对普通列名称的映射定义
-->
<result column="_username" property="username"/>
<result column="_birthday" property="birthday"/>
<result column="_address" property="address"/>
</resultMap>
2.使用resultMap作为statement的输出映射(该案例在UserMap.xml中,后面也不一定在同一个xml文件中,不在同一个文件中是要加namespace)
<select id="findUserByIdResultMap" parameterType="int" resultMap="userResultMap">
SELECT id _id,username _username,birthday _birthday,address _address from USER WHERE id=#{id}
</select>
【不要忘了UserMapper接口中对应的方法】

【测试代码】
@Test
public void testFindUserByIdResultMap() throws Exception { SqlSession sqlSession =sqlSessionFactory.openSession(); //创建一个UserMapper对象,Mybatis自动生成mapper代理对象
UserMapper userMapper=sqlSession.getMapper(UserMapper.class); //调用userMapper的方法
User user = userMapper.findUserByIdResultMap(3); System.out.println(user.toString());
}
【运行结果】

14_输出映射2_resultMap的更多相关文章
- mybatis入门基础(四)----输入映射和输出映射
一:输入映射 通过parameterType指定输入参数的类型,类型可以是简单类型.hashmap.pojo的包装类型. 1.1.传递pojo的包装对象 1.1.1.需求描述 完成用户信息的综合查询, ...
- 【Mybatis架构】输入、输出映射
前言综述: 其实在我们分析Mybatis的查询缓存或者是一些简介的时候,我们就不难看到有关于Mybatis输入输出映射的东西,比如说: 但是一直没有想起来系统的来总结一下这方面的相关知识,偶然看到 ...
- 5.Mybatis的输出映射(就是对查询的结果集的映射)
Mybatis的输出映射,也就是对查询结果集的一个映射,主要有两种: 1.resultType(不需要配置,可以直接用) 一般是实体类 基本类型也可以 2.resultMap(需要配置resultMa ...
- 13_输出映射1_resultType
输出映射主要有两种:resultType和resultMap [resultType] 可以返回三种类型 pojo对象:例如select * from user where id=? pojo对象列表 ...
- 【JAVA - SSM】之MyBatis输出映射
MyBatis中的输出映射有两种:resultType和resultMap. 1.resultType 使用resultType进行结果映射时,只有当查询结果中有至少一列的名称和resultType指 ...
- Spring+SpringMVC+MyBatis深入学习及搭建(四)——MyBatis输入映射与输出映射
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6878529.html 前面有讲到Spring+SpringMVC+MyBatis深入学习及搭建(三)——My ...
- 【mybatis深度历险系列】mybatis中的输入映射和输出映射
在前面的博文中,小编介绍了mybatis的框架原理以及入门程序,还有mybatis中开发到的两种方法,原始开发dao的方法和mapper代理方法,今天博文,我们来继续学习mybatis中的相关知识,随 ...
- JAVAEE——Mybatis第二天:输入和输出映射、动态sql、关联查询、Mybatis整合spring、Mybatis逆向工程
1. 学习计划 1.输入映射和输出映射 a) 输入参数映射 b) 返回值映射 2.动态sql a) If标签 b) Where标签 c) Sql片段 d) Foreach标签 3.关联查询 a) 一对 ...
- mybatis基础系列(二)——基础语法、别名、输入映射、输出映射
增删改查 mapper根节点及其子节点 mybatis框架需要读取映射文件创建会话工厂,映射文件是以<mapper>作为根节点,在根节点中支持9个元素,分别为insert.update.d ...
随机推荐
- Ubuntu14.04安装Oracle12C
原文:http://www.techienote.com/2014/04/how-to-install-oracle-12c-enterprise-edition-database-ubuntu-13 ...
- 一分钟快速入门openstack
一.它是什么,能干什么想认识一个事物,必须先弄明白它是什么,能干什么.首先说一下,openstack是一个搭建云平台的一个解决方案,说他不是个软件,但是我觉得说是一个软件,能够让大家认识更清晰些.op ...
- SIP SDP RTSP RTP RTCP webrtc
rfc1889 rfc2326 rfc3261 rfc3550 rfc3856 rfc6120. SIP SDP RTSP RTP RTCP,就像他们出现的顺序一样,他们在实际应用中的启用 ...
- mysql实用指南
mysqld --verbose --help: 可以显示 mysql 的编译配置选项,即功能配置描述. mysql 的配置文件my.cnf调用次序(mysqld --verbose --help 的 ...
- centos6 kvm网卡桥接
以前用VMware,我的上司说,你既然都用CentOS的桌面,那就研究一下KVM. 好吧,上司做运维好几年了,就听了他的,装了一个KVM. KVM的网络默认是NAT,不方便,就学习BRIDGE!!! ...
- PHP魔术方法总结
1.__get.__set这两个方法是为在类和他们的父类中没有声明的属性而设计的__get( $property ) 当调用一个未定义的属性时访问此方法__set( $property, $value ...
- HTML5 中的一些新特性
HTML5是HTML最新的修订版本,包含了新的标签元素,属性和行为,同时包含了一系列可以被用来让 Web 站点和应用更加多样化,功能更强大的技术.HTML5实现了不依赖flash插件播放视频,而且引入 ...
- JAVA基础入门
Java入门基础 1.IDE->Eclipse 新建程序步骤 1.创建一个Java项目 2.创建一个包(package) 也就相当于C#中的命名空间C++中的头文件 3.创建一个类 这样就完成了 ...
- -bash: ls: command not found
在iMac下ls既然command not found,查找了下 原因:在设置环境变量时,编辑profile文件没有写正确,导致在命令行下 ls等命令不能够识别.解决方案: 直接在控制台下 expo ...
- SQL Server数据库PIVOT函数的使用详解(二)
动态的行转列 原理就是 把需要转成列的行拼出来 DECLARE @fieldName VARCHAR(); SET @fieldName=''; SELECT @fieldName = @fieldN ...