映射关系

简介: MyBatis中通过resultMap实现一对一、一对多、多对一及多对多映射。一对一用于属性与字段映射;一对多通过`<collection>`关联主表与子表集合;多对一使用`<association>`关联对象;多对多借助中间类实现双向集合映射,灵活处理复杂关系数据。

1 一对一
定义一个一对一的Result,进行属性-字段之间的一对一关联映射即可,如果属性和字段是一致的,resultType实际也是可以的,resultMap更多是解决字段-属性不一致(满足驼峰命名就是一致),如id(属性)-USER_ID(字段)
2 一对多
设:一个用户对应多个角色
● User类中添加List
● 一的mapper.xml中,resultMap添加标签.
如:













会得到类似这样的数据
{
"id": "1003",
"username": "小波",
"password": "123456",
"address": "北京市东城区",
"email": "510273027@qq.com",
"roles": [
{
"id": "1",
"name": "开发"
},
{
"id": "2",
"name": "TL"
}
]
}
3 多对一
设:一个作者可以有多个博客
● Author类中添加Blog
● 一的mapper.xml中添加
如:








或:











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

相关文章
|
4月前
|
安全 小程序 JavaScript
OAuth2.0四种授权模式
OAuth2四种授权模式简介:授权码模式最安全,适用于第三方登录;简化模式无授权码,token直接返回,适合无后端场景;密码模式需用户共享账号信息,仅限高度信任服务;客户端模式为服务间调用,无需用户参与。
|
4月前
|
存储 NoSQL 物联网
MongoDB应用场景
MongoDB适用于社交、游戏、物流、物联网及直播等场景,因其支持海量数据存储、高频读写操作。用户信息、动态、日志等低事务性、高并发数据可高效存取,尤其适合用嵌套结构与地理位置索引优化查询,是大规模非结构化数据存储的理想选择。(238字)
|
4月前
|
SQL 数据库 数据安全/隐私保护
用于绕过身份验证的 SQL 注入示例
SQL注入可绕过登录验证,攻击者通过提交恶意构造的用户名(如admin&#39;)--)和空密码,利用注释符使数据库忽略密码校验,从而非法登录。该技术依赖应用缺乏输入验证,凸显严格过滤与参数化查询的重要性。(238字)
|
4月前
|
存储 NoSQL MongoDB
索引的类型
MongoDB支持单字段索引(升序/降序)和复合索引(多字段有序组合),提升查询效率。还提供地理空间索引(支持平面与球面查询)、文本索引(支持字符串内容搜索,存储词干)和哈希索引(用于散列分片,仅支持等值匹配)。
|
4月前
|
存储 安全 Java
OAuth2.0使用场景
A网站需打印用户存于B网站的照片时,传统方式需共享账号密码,而OAuth2只需获取临时通行令牌,按需授权资源访问权限,更安全灵活。注意:OAuth2侧重服务间资源授权,不同于单点登录。Spring Security集成OAuth2可实现资源共享与单点登录。
|
4月前
|
安全 数据安全/隐私保护
什么是OAuth2.0
OAuth(开放授权)是一种安全、简易的标准,允许第三方应用在不获取用户账号密码的情况下,获得用户资源授权。OAuth2.0是其升级版,安全性与灵活性更强,但不兼容OAuth1.0,已完全取代旧版本。
|
4月前
|
存储 安全 Java
认证流程分析
`UsernamePasswordAuthenticationFilter` 是 Spring Security 处理表单登录的核心过滤器,拦截 `/login` 的 POST 请求,提取用户名密码并封装为 `UsernamePasswordAuthenticationToken`,交由 `AuthenticationManager` 认证。认证成功后将结果存入 `SecurityContext`,支持“记住我”及后续处理,失败则清空上下文并调用失败处理器。
|
4月前
|
安全 Java Spring
SecurityFilterChain
`SecurityFilterChain` 是Spring Security中定义安全过滤器链的接口,其唯一实现类 `DefaultSecurityFilterChain` 封装了请求匹配器和过滤器列表,用于判定请求是否匹配并提供对应的过滤器链,是Web安全配置的核心组件。
|
4月前
|
安全 Java 网络安全
FilterChainProxy
`FilterChainProxy` 是 Spring Security 的核心过滤器链代理,通过 `SecurityFilterChain` 管理多个安全过滤器。请求到来时,先经防火墙封装,再匹配适用的过滤器链,最终由虚拟链依次执行。十五个安全过滤器由此协同工作,保障应用安全。
|
4月前
|
安全 Java Spring
DelegatingFilterProxy
在web.xml中配置的DelegatingFilterProxy,实际是Spring Security的入口。其核心是通过`doFilter`方法,首次调用时根据`targetBeanName`(即`springSecurityFilterChain`)从Spring容器中获取真正的过滤器`FilterChainProxy`,并缓存到`delegate`属性。随后执行该代理过滤器,实现安全控制链。

热门文章

最新文章