MyBatis联合查询association使用
1.需求
两张表 channels(频道表) member(会员表) 频道表里面有会员id,查询频道列表的时候需要关联查询出会员的名称,头像等信息 。
2.channels.xml定义,配置主要在这里
<!-- 频道返回值定义 -->
<resultMap id="BaseResultMap" type="com.model.Channels" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="asset_id" property="assetId" jdbcType="VARCHAR" />
<result column="asset_name" property="assetName" jdbcType="VARCHAR" />
<!-- 关联查询出会员信息,member_id是channels表中外键 -->
<association property="memberInfo" column="member_id" select="findByMemberId"></association>
</resultMap>
<!-- 会员信息返回值定义 -->
<resultMap id="memberResultMap" type="com.model.Member" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="nick_name" property="nickName" jdbcType="VARCHAR" />
<result column="member_icon" property="memberIcon" jdbcType="VARCHAR" />
<result column="mobile_phone" property="mobilePhone" jdbcType="VARCHAR" />
<result column="last_login_time" property="lastLoginTime" jdbcType="TIMESTAMP" />
</resultMap>
<!-- 查询会员信息 -->
<select id="findByMemberId" resultMap="memberResultMap" parameterType="java.lang.String" >
select id, nick_name,member_icon, mobile_phone,last_login_time
from ao_member_tab
where id = #{id,jdbcType=VARCHAR}
</select>
3. Channels表模型定义
<!-- 频道Model定义 -->
public class Channels { private String assetId; private String assetName; //会员信息
private Member memberInfo;
}
4. 这样查询列表中就可以通过channel.memberInfo获取到Member对像,就可以直接获取到会员信息了
参考:http://www.cnblogs.com/xdp-gacl/p/4264440.html
MyBatis联合查询association使用的更多相关文章
- MyBatis联合查询和使用association 进行分步式查询
查询Emp的同时,查出emp对应的部门Department 方法1:联合查询,使用级联属性封装结果集 <!-- 联合查询,使用级联属性封装结果集 type:要自定义规则的javaBean类型 i ...
- MyBatis关联查询 (association) 时遇到的某些问题/mybatis映射
先说下问题产生的背景: 最近在做一个用到MyBatis的项目,其中有个业务涉及到关联查询,我是将两个查询分开来写的,即嵌套查询,个人感觉这样更方便重用: 关联的查询使用到了动态sql,在执行查询时就出 ...
- Mybatis 联合查询XML与注解对比
由于是练习,故只做了感兴趣的一部分测试. 测试类容XML配置转注解方式 实体类为了测试请忽略设计是否合理… User.java @Alias("User")public class ...
- Mybatis联合查询(一)
Mybatis的简单联合查询操作: 实体类: Employee: package com.test.mybatis; public class Employee { private Integer i ...
- Mybatis关联查询<association> 和 <collection>
一.背景 1.在系统中一个用户存在多个角色,那么如何在查询用户的信息时同时把他的角色信息查询出来啦? 2.用户pojo: public class SysUser { private Long id; ...
- mybatis联合查询
1.有学生实体 @Component @Scope("prototype") public class StudentInfo { private Integer studentI ...
- mybatis 关联查询 association
<resultMap id="DutyPersonAndFileAndScoreMap" type="com.cares.asis.duty.entity.Duty ...
- Mybatis联合查询记录,左连接参数操作
公司业务需求要做个列表的排序 而实际排序的字段不再本库中,需要跨库去拿到字段,因为是微服务体系架构,不可能Left join跨库的表,所以决定调用一次跨服务的API拿到排序相关的对象,里面包含需要排序 ...
- myBatis中 collection 或 association 联合查询 中column 传入多个参数值
下面是一个树形结构表自连接 联合查询 Demo <resultMap id="BaseResultMap" type="com.maidan.daas.entit ...
随机推荐
- JDK之ThreadLocal分析
ThreadLocal是在是Thread的一个局部变量,今天我来分析了一下这个类 先看ThreadLocal的set方法 public void set(T value) { Thread t = T ...
- Android UI开发第二十七篇——实现左右划出菜单
年前就想写左右滑动菜单,苦于没有时间,一直拖到现在,这篇代码实现参考了网上流行的SlidingMenu,使用的FrameLayout布局,不是扩展的HorizontalScrollView. 程序中自 ...
- linux中常见的文件操作命令
由于经常在linux发布工程进行测试,所以要用到linux一些文件操作命令,再此进行总结,以便以后忘记的时候查看. 改变目录:cd 回到家目录 cd或者cd~ 查看当前目录:pwd 查看目录下的文件的 ...
- 创建String字符串的方式与区别
Java中创建一个字符串的方式有很多种,常见如: String s = new String("riqi"); String s = "riqi"; 但两者有什 ...
- echarts+thinkphp 学习写的第一个程序
一.前台 建个名为map.html,代码如下. <!doctype html><html lang="en"><head> <meta c ...
- <2013 10 18> Linux随机数生成器可能确实存在安全弱点
生成随机数是密码学中的一项基本任务,是生成加密密钥和加密算法或加密协议所必不可少的.理想中的随机数是完美的,但实践中的随机数都是用伪随机数生成器(PRNG)生成,随机数的质量对安全性至关重要.安全专家 ...
- velocity 遍历EventHandler Iterator
EventHandlerUtil 类的 iterateOverEventHandlers方法 for (Iterator i = handlerIterator; i.hasNext();){ Eve ...
- VMware下安装CentOS
开始安装VMware 下载CentOS 7.4 镜像 可以去阿里云的镜像站下载:https://opsx.alibaba.com/mirror 来到主页面,点击centos 选择 7.4 版本 选择镜 ...
- Longest Common Prefix -最长公共前缀
问题:链接 Write a function to find the longest common prefix string amongst an array of strings. 解答: 注意 ...
- 2.5 使用ARDUINO做主控,手机发送短信控制开关LED
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...