MyBatis 手动映射结果集
MyBatis可以自动将查询结果封装到bean中,前提条件是bean的属性名和查询的结果列名相同,就会一次对应存储。
如果查询结果的列名和bean的属性名不一致,则需要手动映射结果集
<!-- 手动映射结果集 -->
<resultMap type="cn.tedu.mybatis.beans.User" id="userRM">
<!-- 主键列必须声明,且应使用id标签声明 -->
<id column="uid" property="id"/>
<!-- 对于非主键列,如果列名和bean的属性名相同,则不必配置 -->
<!-- <result column="name" property="name"/> -->
<result column="uage" property="age"/>
</resultMap> <select id="queryByMapping" resultMap="userRM">
select id as uid,name,age as uage from user;
</select>
resultMap="userRM" :用来将映射和查询操作联系起来 配置 id 的映射时用 id 标签
配置其它便签时用 result 标签
测试类:
// 根据配置文件创建sqlSessionFactory
private SqlSessionFactory factory = null;
@Before
public void before() throws Exception{
//1.读取MyBatis核心配置文件
InputStream in = Resources.getResourceAsStream("sqlMapConfig.xml");
//2.根据配置文件创建sqlSessionFactory
factory = new SqlSessionFactoryBuilder().build(in);
} /**
* 手动映射结果集
*/
@Test
public void test12(){
// 1.创建SqlSession
SqlSession session = factory.openSession();
// 2.执行操作
List<User> list = session.selectList("cn.tedu.mybatis.beans.UserMapper.queryByMapping");
// 3.打印结果
System.out.println(list);
}
MyBatis 手动映射结果集的更多相关文章
- Mybatis映射文件的自动映射与手动映射问题
Mapper XML 文件 MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会 ...
- MyBatis的手动映射与模糊查询
一.手动映射 当实体类属性与数据库字段名不同时,无法自动映射,导致查询出空值,这时候可以使用手动映射 在select节点添加resultMap属性与resultMap节点建立关系
- 【Mybatis高级映射】一对一映射、一对多映射、多对多映射
前言 当我们学习heribnate的时候,也就是SSH框架的网上商城的时候,我们就学习过它对应的高级映射,一对一映射,一对多映射,多对多映射.对于SSM的Mybatis来说,肯定也是差不多的.既然开了 ...
- Mybatis输入输出映射_动态sql_关联关系(一对一、一对多、多对多)
Mybatis输入输出映射_动态sql_关联关系(一对一.一对多.多对多)输入输出映射parameterType完成输入映射parameterType可以传入的参数有,基本数据类型(根据id查询用户的 ...
- mybatis 高级映射和spring整合之查询缓存(5)
mybatis 高级映射和spring整合之查询缓存(5) 2.0 查询缓存 2.0.1 什么是查询缓存 mybatis提供缓存,用于减轻数据压力,提高数据库性能. mybatis提供一级缓存和二级缓 ...
- mybatis中封装结果集常见示例
1.返回一个对象 public interface EmployeeMapper { public Employee getEmpByMap(Map<String, Object> map ...
- Mybatis面试题合集及答案
Mybatis面试题合集及答案 1.#{}和${}的区别是什么? 答:${}是Properties文件中的变量占位符,它可以用于标签属性值和sql内部,属于静态文本替换,比如${driver}会被静态 ...
- Mybatis SQL映射文件详解
Mybatis SQL映射文件详解 mybatis除了有全局配置文件,还有映射文件,在映射文件中可以编写以下的顶级元素标签: cache – 该命名空间的缓存配置. cache-ref – 引用其它命 ...
- Mybatis sql映射文件浅析 Mybatis简介(三)
简介 除了配置相关之外,另一个核心就是SQL映射,MyBatis 的真正强大也在于它的映射语句. Mybatis创建了一套规则以XML为载体映射SQL 之前提到过,各项配置信息将Mybatis应用的整 ...
随机推荐
- Blender 精确建模3D打印注意事项
首先参照前面的<Blender的单位:一图弄懂Blender的单位>设置好自己环境的长度单位. 下面的注意事项,没有先后关系,遇到的就会补充. 1. 模型需要进行布尔计算前,在物件我是下, ...
- [codeforces Mail.Ru Cup 2018 Round 3][B Divide Candies ][思维+数学]
https://codeforces.com/contest/1056/problem/B 题意:输入n,m 求((a*a)+(b*b))%m==0的(a,b)种数(1<=a,b<= ...
- 20165313 《Java程序设计》第四周学习总结
教材学习总结 public:1.用在类前.2.用在方法前 .3. 用在成员变量前 private:用在成员变量前 final1.用在类前2.用在方法前3.用在成员变量前 static:1.所有对象公有 ...
- 深入学习Motan系列(一)——入门及知识zookeeper储备
背景以及说明: 最近逮到个RPC框架,打算深入学习,框架千千万,只有懂得内部原理,才能应对复杂的业务,进行自定义化系统. 这个系列的Motan文章也是自己慢慢摸索的轨迹,将这个过程记录下来,一是提升自 ...
- 我的TDD实践---CI持续集成
“我的TDD实践”系列之CI持续集成 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先行,后理论专精 ...
- Abstract Data Types in C
Interface declares operations, not data structure Implementation is hidden from client (encapsulatio ...
- System.Collections 学习
public interface IEnumerator { object Current { get; } bool MoveNext(); void Reset(); } public inter ...
- 设置 sideload Outlook Add-ins
上期,我们讲到了用前端技术去建立一个outlook add-ins 我们今天来讲解一下怎样测试一个sideload outlook add-ins. 1. 我们需要登录Outlook在Office 3 ...
- c# 数据类型可在在最后的带一个字母
folat的后面要带F或者f: double的后面要带D或者d: decimal的后面要带M或者m: long的后面要带L或者l:
- 获取当前 服务 路径 .net
using System; //例如 AppDomain.CurrentDomain.BaseDirectory + "\\Setting.ini";