关闭

Mybaits利用resultMap实现一对一

187人阅读 评论(0) 收藏 举报
分类:
定义resultMap:
<resultMap type="dancheng.mybatis.po.Orders" id="OrderUserResultMap">
    <!-- 配置映射的订单信息 -->
    <id column="id" property="id"/>
    <result column="user_id" property="userId"/>
    <result column="number" property="number"/>
    <result column="createtime" property="createtime"/>
    <result column="note" property="note"/>
        <!-- 配置映射关联信息 -->
    <!-- association:用于映射关联查询单个对象的信息
        property:要将关联查询的用户信息映射到Orders中哪个属性
    -->
    <association property="user" javaType="dancheng.mybatis.po.User">
        <!-- id:关联查询用户的唯一标识 -->
        <id column="user_id" property="id"/>
        <result column="username" property="username"/>
        <result column="sex" property="sex"/>
        <result column="address" property="address"/>
    </association>
</resultMap>


引用resultMap:
<select id="findOrderUserResultMap" resultMap="OrderUserResultMap">
    SELECT
    orders.*,
    user.username,
    user.sex,
    user.birthday,
    user.address
    FROM orders,
    USER
    WHERE orders.user_id = user.id
</select>


mapper:
public List<Orders> findOrderUserResultMap() throws Exception;



Test:

public class OrdersMapperCustomTest {
	private SqlSessionFactory sqlSessionFactory;
	@Before
	public void setUp() throws Exception {
		InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");
		sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
	}
	
	@Test
	public void testFindOrderUserResultMap() throws Exception {
		SqlSession sqlSession = sqlSessionFactory.openSession();
		OrdersMapperCustom ordersMapperCustom = sqlSession.getMapper(OrdersMapperCustom.class);
		
		List<Orders> orderList = ordersMapperCustom.findOrderUserResultMap();
		
		System.out.println(orderList);
	}

}



0
0
查看评论

mybatis 一对一关系取值association 通过resultMap实现

mybatis 一对一关系取值association 通过resultMap实现 上一篇文章介绍了使用association利用mybatis进行再次查询实现一对一的关联mybatis 一对一关系取值association,现在还有一种更加简单的方式。直接利用resultMap把mybatis返回...
  • wild46cat
  • wild46cat
  • 2016-11-13 20:47
  • 2750

MyBatis的ResultMaps之一对一关系

1. 一对一关系 在我们domain的包中,每一个student都关联了一个地址。STUDENT的表中拥有ADDR_ID的列这个是作为ADDRESS表的外主键。 STUDENT表的信息如下: ADDRESS表的信息如下: 让我们来看一下如何通过获取Student信息包括Adress信息。 ...
  • owen_william
  • owen_william
  • 2016-07-03 15:24
  • 1433

Mybatis最入门---ResultMaps实例篇(一对一查询)

[一步是咫尺,一步即天涯] 前面我们花了两篇文章的篇幅叙述了Mybatis中最核心的resultMap配置,本文开始,我们来演示在实际开发中,如何配置和使用resultMap提供给我们强大功能。 准备工作: a.操作系统 :win7 x64 b.基本软件:MySQL,Mybatis,Sprin...
  • ABCD898989
  • ABCD898989
  • 2016-04-20 20:51
  • 2537

Mybaits利用resultMap实现一对多

对于一对多的resultMap的定义 <!-...
  • dancheng1
  • dancheng1
  • 2017-01-03 22:02
  • 223

Mybaits利用resultMap实现多对多查询

resultMap的定义 <!-- 订单信息 一个用户对应多个订单使用collection映射 -->...
  • dancheng1
  • dancheng1
  • 2017-01-04 09:01
  • 171

MyBatis之resultMap的作用和xml配置折腾

简单的搭建。MyBatis实战——前身iBatis、基础环境搭建和如何"钓鱼" 这篇写了基础的环境搭建和代码操作。我这里是使用了xml加interface结合的方法进行操作。现有Employee类。如果是简单的select,可以看看下面简单的例子。Employee.ja...
  • iaiti
  • iaiti
  • 2016-11-19 14:04
  • 11960

MyBatis中一对一关联查询

1、一对一关联查询的案例      1.1  需求             根据班级id查询班级信息(带老师信息)      1.2  创建表和数据 &...
  • zbw18297786698
  • zbw18297786698
  • 2016-12-19 14:36
  • 1365

Mybatis连结3表查询数据resultMap结果映射

转载:http://blog.csdn.net/sunrise_zhu/article/details/53310662 Mybatis连结3表查询数据resultMap结果映射 一、前言
  • y19910825
  • y19910825
  • 2017-12-27 14:42
  • 20

MyBatis(八) resultMap 之 (三) 延迟加载 (懒加载)

resultMap 用于映射 对象关系的 时使用。 对照对象的属性可以很方便的写出 mapper.xml 映射文件。下面用一个例子来再次说明resultMap 的映射过程。 场景如下: 需要查询 多个用户,当点击查看是可以查看他的所有的订单,点击订单时可以查看里面的商品如果要完成这个...
  • zhanglinlang
  • zhanglinlang
  • 2017-02-09 23:25
  • 925

MyBatis映射文件的resultMap一对一一对多关联

mybatis如何进行一对一、一对多的多表查询, 这里用一个简单的例子说明 类PrintExportInfo,对应的实体类如下: private String exportId; private Date exportTime; private String exportUserId; ...
  • xiangjai
  • xiangjai
  • 2016-12-14 11:29
  • 1592
    个人资料
    • 访问:165666次
    • 积分:6859
    • 等级:
    • 排名:第4056名
    • 原创:540篇
    • 转载:23篇
    • 译文:0篇
    • 评论:19条
    最新评论