mybatis的一对多映射
发表于:2025-11-10 作者:千家信息网编辑
千家信息网最后更新 2025年11月10日,延续mybatis的一对一问题,还是上面一对一举得那个例子(http://fengcl.blog.51cto.com/9961331/1875657),如果一个用户有多个作品怎么办?这就涉及到了一对多
千家信息网最后更新 2025年11月10日mybatis的一对多映射
延续mybatis的一对一问题,还是上面一对一举得那个例子(http://fengcl.blog.51cto.com/9961331/1875657),
如果一个用户有多个作品怎么办?这就涉及到了一对多的问题。同样的,mybatis一对多依然可以分为两种方式来解决。
一、使用内嵌的ResultMap实现一对多映射
1)实体
public class User implements Serializable{ private static final long serialVersionUID = 112596782083832677L; private Integer id; //编号 private String email; //邮箱 private String realName; //真实姓名 private String telephone; //电话号码 private List worksInfos; //作品 //get,set方法 ...}public class WorksInfo implements Serializable{ private Integer id; private Integer userId; private Date uploadDate; //上传时间 private Date updateDate; //更新时间 //get,set方法 ...} 2)dao接口省略...
3)mapper映射文件
4)测试省略
二、嵌套查询方式实现一对多
1)实体类如上
2)dao层接口省略
3)mapper文件映射
4)测试方法忽略
注意:collention元素里的column属性,即主表中要传递给副表做查询的条件,例如本例中:
及时将user表中的id字段传递给findWorksInfoByUserId方法做参数使用的,对应worksInfo表中的userId字段。除此之外,嵌套select语句会导致N+1的问题。首先,主查询将会执行(1 次) ,对于主
查询返回的每一行,另外一个查询将会被执行(主查询 N 行,则此查询 N 次) 。对于
大型数据库而言,这会导致很差的性能问题。
查询
方法
问题
作品
字段
实体
接口
文件
方式
时间
测试
一对一
一行
例子
元素
参数
号码
多个
姓名
属性
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
2018年网络安全线上答题
宝塔服务器搭建挂机宝
微软服务器管理软件
数据库使用协议属于什么性质合同
组织网络安全法教育培训
山西正规软件开发服务五星服务
有个网络技术团队可以做什么
地方法律法规数据库官网
禁毒软件开发
网络技术运营是什么意思
小程序源码腾讯服务器管理
服务器高危漏洞检测
学校网络安全 的感想
苹果微信服务器在中国哪里
求生之路服务器一进去就断开
达梦数据库清空表
服务器为什么会不向应
音视频数据库
英雄联盟联盟无法连接到服务器
网络安全销售员的任职计划
洛阳迅优网络技术怎么样
外卖网络技术人员
软件开发项目管理程序
网络安全日哪年
软件开发 互联网信息服务
山东信熙迩互联网科技有限公司
山西it软件开发服务为先
网络安全周班会内容
360安全卫士下载 服务器
奔图打印连接不到服务器