MyBatis映射关系(1-1 1-n n-n)

简介: 本文介绍了MyBatis中四种核心关联映射:一对一(属性与字段映射)、一对多(如用户关联多个角色,使用`<collection>`)、多对一(如博客关联作者,使用`<association>`)和多对多(通过中间类实现,如用户与部门)。适用于解决实体间复杂关系映射问题。

1 一对一
定义一个一对一的Result,进行属性-字段之间的一对一关联映射即可,如果属性和字段是一致的,resultType实际也是可以的,resultMap更多是解决字段-属性不一致(满足驼峰命名就是一致),如id(属性)-USER_ID(字段)2 一对多设:一个用户对应多个角色User类中添加List一的mapper.xml中,resultMap添加标签.如:会得到类似这样的数据
JSON复制代码
{
"id": "1003",
"username": "小波",
"password": "123456",
"address": "北京市东城区",
"email": "510273027@qq.com",
"roles": [
{
"id": "1",
"name": "开发"
},
{
"id": "2",
"name": "TL"
}
]
}
3 多对一设:一个作者可以有多个博客Author类中添加Blog一的mapper.xml中添加如:
XML复制代码







或:
XML复制代码






4 多对多设:多个部门对应多个用户定义一个第三方类,假设为UserForDept.java,属性private User user; private Dept dept;User类中添加Set(针对不同场合这里也可以List),mapper.xml中添加添加UsersForDeptDept类中添加Set(针对不同场合这里也可以List),mapper.xml中添加添加UsersForDept

相关文章
|
7月前
|
机器学习/深度学习 Java 数据库连接
MyBatis 关联映射详解:1:1、1:N、N:1 与 N:N 实现方式
本文详解 MyBatis 中 resultMap 的四种关联映射:一对一、一对多、多对一和多对多,结合代码示例讲解实现方式与最佳实践,助你掌握复杂对象关系的数据映射技巧。
|
7月前
|
XML Java 数据格式
SpringBoot@Configuration使用总结
被@Configuration标注的类视为Spring配置类,等同于XML配置文件。通过@Bean注册Bean,结合AnnotationConfigApplicationContext可启动IOC容器,加载并管理Bean实例,包括配置类自身。
|
7月前
|
人工智能 NoSQL 前端开发
面试真题
多套AI与Java技术面试题汇总,涵盖RAG、智能体、大模型部署、分布式系统、JVM调优、数据库设计等核心内容,深入考察候选人项目经验、架构设计及技术深度,适用于中高级工程师岗位选拔。
|
7月前
|
机器学习/深度学习 存储 自然语言处理
大模型基础概念术语解释
大语言模型(LLM)基于Transformer架构,通过海量文本训练,实现强大语言理解与生成。其核心为自注意力机制,结合Token化、位置编码与嵌入层,支持万亿级参数规模。参数增长带来涌现能力,如复杂推理与泛化性能。混合专家模型(MoE)提升效率,推动模型持续扩展。
|
7月前
|
消息中间件 人工智能 决策智能
AgentScope x RocketMQ:构建多智能体应用组合
AgentScope是阿里开源的多智能体开发框架,支持模块化、透明化、可定制的智能体构建。集成RocketMQ实现高效A2A通信,助力打造如“智能旅行助手”等复杂协作应用,推动开发者友好型AI生态发展。
|
7月前
|
消息中间件 人工智能 Linux
基于 RocketMQ 构建 高可靠 A2A 通信通道
A2A协议由Google于2025年发起,旨在实现跨厂商AI智能体的标准化通信。基于RocketMQ构建的异步通信方案,支持任务分发、流式交互与状态同步,助力多智能体系统高效协作,推动开放可扩展的Agent生态发展。
|
7月前
|
消息中间件 人工智能 NoSQL
RocketMQ for AI:重新定义 AI 应用通信范式
RocketMQ LiteTopic 专为 AI 场景设计,应对长时会话、高延迟、大上下文等挑战。支持百万级轻量队列,实现会话级私有通道与细粒度订阅。LiteConsumer 可动态管理节点级订阅,免去 Redis 依赖与广播开销,简化架构,提升稳定性。原生支持断点续传、状态恢复,保障 AI 多轮交互的可靠闭环,构建高效、弹性的新一代通信模型。(239字)
|
7月前
|
机器学习/深度学习 数据采集 人工智能
大模型训练方法与技术术语解释
预训练、微调、RLHF、思维链等技术共同构建大模型核心能力。预训练夯实语言基础,微调适配特定任务,RLHF对齐人类偏好,思维链提升推理,少/零样本实现快速迁移,指令微调增强指令理解,自监督利用海量文本,温度控制生成风格,蒸馏压缩模型规模,缩放定律指引性能增长路径。
|
7月前
|
人工智能 JSON 安全
大模型应用开发中MCP与Function Call的关系与区别
MCP与Function Call是大模型应用的两大关键技术。前者为跨模型工具调用的标准化协议,实现系统解耦与生态扩展;后者是模型调用外部功能的内置机制。二者互补协同,推动AI应用向高效、开放、安全演进。
|
7月前
|
存储 人工智能 Java
面试回答示例篇
本文系统介绍了AI开发核心技术:SpringAI、LangChain4J与LangChain框架对比,智能体设计原理,RAG增强生成、Tool Calling工具调用、MCP协议、向量知识库等关键技术,并结合实际项目讲解AI集成、模型选型、私有化部署、流式输出、上下文管理及大模型幻觉解决方案,涵盖从架构设计到落地优化的完整实践路径。(239字)

热门文章

最新文章