MyBatis学习笔记(三)关联关系映射

在学习mabatis 的过程中,接触到了关联关系映射,认为这是一个很重要的点,所以在这里做一个总结,进而强化知识。

关联关系映射我们说直白一点就是用于处理多表查询嗦得出的结果。此时,mybatis不能把结果集直接映射到我们的POJO上,所以,我们有一种方法便是创建一个VO对象,结果集里有什么列,VO对象里就有什么属性,以此来存放结果。

例如,查询博客表和用户表,一个博客有一个作者

select author.username blog.title from author inner join blog on author.id = blog.author_id where blog.id = 1

那么,VO对象里就应该是

MyBatis学习笔记(三)关联关系映射_第1张图片

此时VO对象就能接收结果集了

此外,还有一个方法是用的更多的,叫做resultMap,多种方式实现,先看看模型类的样子

MyBatis学习笔记(三)关联关系映射_第2张图片

一对一:第一种方式


	
	
	
	
	
	
	
		
	        
		
		
		
		
	


第二种方式就是使用两次resultMap,第一个用于映射关联属性,第二个只需要在association标签里指定接收上一个resultMap就行

MyBatis学习笔记(三)关联关系映射_第3张图片

第三种方式使用了两次查询,分别去查询两张表里的内容

MyBatis学习笔记(三)关联关系映射_第4张图片

一对多,与一对一很相似,方法也差不多,唯一不同的是association变成了collection


	
	
	
	
	
		
		
		
		
	

一对多加上一对一,直接把一对多加一对一的写法写上去,加一个extends就行

MyBatis学习笔记(三)关联关系映射_第5张图片

你可能感兴趣的:(MyBatis)