mybatis框架的连表查询one2one
mybatis 的连表查询one2one
1.可以通过主从表之间的关联查询通过主键两次
在resultMap映射中的association标签<association property="info" column="user_id"
javaType="UserInfo"
再通过select属性得到从表对应映射的mapper的getUserInfoByUserId方法
select="com.gezhi.mapper.UserInfoMapper.getUserInfoByUserId">
</association>
从表的mapper
<sql id="userInfoSql">
info_id,info_nickname,info_phone,info_email,info_gender,info_address
</sql>
<select id="getUserInfoByUserId" resultMap="userInfoMap"
parameterType="int">
select
<include refid="userInfoSql"></include>
from user_info where user_id=#{id}
</select>
2.通过left join 连表查询一次
去掉select属性,添加从表的result Map
<association property="info" column="user_id"
javaType="UserInfo"
resultMap="com.gezhi.mapper.UserInfoMapper.userInfoMap">
</association>
从表中的mapper
<!-- 联合查询users表中的信息,双向关联 -->
<resultMap type="UserInfo" id="userInfoMap">
<id property="infoId" column="info_id" javaType="integer" />
<result property="nickName" column="info_nickname"
javaType="java.lang.String" />
<result property="phone" column="info_phone"
javaType="java.lang.String" />
<result property="Email" column="info_email" javaType="string" />
<result property="gender" column="info_gender"
javaType="string" />
<result property="address" column="info_address"
javaType="java.lang.String" />
<association property="user" column="user_id"
javaType="User" resultMap="com.gezhi.mapper.UserMapper.userResultMap">
</association>
</resultMap>
mybatis框架的连表查询one2one的更多相关文章
- SSH框架的多表查询和增删查改 (方法一)上
原创作品,允许转载,转载时请务必标明作者信息和声明本文章==> http://www.cnblogs.com/zhu520/p/7772823.html 因为最近在做Android 练习的 ...
- SSH框架的多表查询和增删查改 (方法一)中
原创作品,允许转载,转载时请务必标明作者信息和声明本文章==>http://www.cnblogs.com/zhu520/p/7774144.html 这边文章是接的刚刚前一遍的基础上敲的 ...
- MyBatis中实现多表查询
如果查询的数据量大,推荐使用N+1次查询.数据量少使用联合查询... 一. 1.Mybatis是实现多表查询方式 1.1 业务装配:对两个表编写单表查询语句,在业务(Service)把查询的两表结果 ...
- 使用mybatis框架实现带条件查询-多条件(传入实体类)
在实际的项目开发中,使用mybatis框架查询的时候,不可能是只有一个条件的,大部分情况下是有多个条件的,那么多个条件应该怎样传入参数: 思考: 需求:根据用户姓名(模糊查询),和用户角色对用户表进 ...
- 使用mybatis框架实现带条件查询-单条件
之前我们写的查询sql都是没有带条件的,现在来实现一个新的需求,根据输入的字符串,模糊查询用户表中的信息 UserMapper.xml UserMapper.java 与jdbc的比较: 编写测试方法 ...
- Mybatis学习——一对一关联表查询
1.SQL语句建表 CREATE TABLE teacher( t_id ) ); CREATE TABLE class( c_id ), teacher_id INT ); ALTER TABLE ...
- MyBatis总结-实现关联表查询
一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关 ...
- MyBatis学习之多表查询
一对多需求:即一张表class中又含有多张表(teacher,student)内容.现根据class_id 来获取对应的班级信息(包括学生和老师信息) 方式一:嵌套结果 使用嵌套结果映射来处理重复的联 ...
- SSH框架的多表查询(方法二)增删查改
必须声明本文章==>http://www.cnblogs.com/zhu520/p/7773133.html 一:在前一个方法(http://www.cnblogs.com/zhu520/p ...
- 在Mybatis中使用连表查询的一次实际应用
以前在工作中很少使用多表关联查询,对连表查询的具体作用和使用场景也没有很直观的认识,通过这次在项目中的实际应用,对此有了一定的认识,特记录如下. 关联表介绍: 分别是属性表attr_info.属性值表 ...
随机推荐
- WCF的实现(方式二)
参考他人实现文件传输 [WCF]利用WCF实现上传下载文件服务 服务端: 1.首先新建一个名为FileService的WCF服务库项目,如下图: 2.将Service,IService重命名为File ...
- 【情景题】NPDP经典题目(下)
1.员工Mary是ACE电气公司的产品经理,公司高管要求她准备一份评价标准清单,从而以该清单为基础来对该产品组合中的新机会进行评价.她提交的清单如下:-潜在市场份额-对公司获利能力的潜在贡献-产品开发 ...
- 使用myBadboy(python自主开发工具)启动谷歌浏览器并自动录制jmeter脚本
一.源代码下载 https://gitee.com/rmtic/mybadboy 说明:因现有的录制方法有不能定制等不足之处,所以自力更生,自动生成对应jmeter脚本,减少维护成本 二.操作说明 1 ...
- windows server的应用软件限流QoS
原因: 生产环境中程序员写的redis调用方法有逻辑问题, 导致流量高达800~900Mbps导致服务器其它网络服务有丢包现象, 他又有别的项目紧急需要修改,只能通过系统自带的QoS临时限流控制. 1 ...
- Oracle View的 WITH READ ONLY 參數有什麼用途?
限制此視圖只能select,不能進行DML(update,delete,insert)操作,可以保護源表的數據不被改動. CREATE VIEW XXXXX_V AS select XXX,XXX1, ...
- https原理(二)服务端公钥有没有被CA私钥加密
https://www.dianjilingqu.com/387084.html 在https原理中,一大争议就是服务端是否用CA私钥加密服务器公钥 是-自签名证书浏览器没有CA公钥,无法解密公钥,而 ...
- ubuntu iptables 做为路由转发
实现功能,本地服务器的号段的192.168.8.0/24,而做为路由器的机器有2个ip,192.168.8.x和另一个ip,而另一个ip可以访问 192.168.2.0/24号段, 为了让其它192. ...
- GIT迁移仓库地址时如何保留分支和历史记录
需求背景 GIT仓库(GitLab)所在服务器因某些原因要关停,相关服务需转移到另外一台机器上. 操作步骤 # clone项目 git clone --mirror http://192.168.12 ...
- SAP物料类型
1.物料主数据界面设置行业领域默认值并隐藏行业领域 2.物料类型设置:主要控制视图需要维护的部门,是否可以采购,及是否进行数量或者价值更新等操作 spro --> 后勤常规--> 物料主数 ...
- vvv,具名插槽
<!DOCTYPE html> <html> <head> <script src="a.js"></script> & ...