实验三 Mybatis多表查询操作

实验三 Mybatis多表查询操作

一实验目的

1.掌握数据库表字段与实体类属性不同的处理方式

2.掌握查询返回无对应实体类的处理方法

3.掌握多表联合查询映射处理

二 实验内容(以下给出示例,请自身编写程序进行练习)

1 解决字段名与实体类属性名不同的方法:

1 )查询时为字段起别名,与属性名一样:

2 )当字段名符合mysql要求,用了_,而属性名符合java驼峰规范,可以采用配置方式开启自动映射。

3) 自定义映射resultMap

2 多对一映射关系三种处理方式:

1 )级联方式

2 )使用association(sql语句同前)

3) 分步查询

首先,先准备好要被调用的接口方法

然后,在association中用select标签调用前面准备好语句,调用时利用column标签向被调用方法传递参数

3 一对多映射关系处理(两种处理方式)

1) 用collection

2)分步查询

先准备好将被调用的接口及SQL映射

然后进行主查询:

实验内容:

1 解决字段名与实体类属性名不同的方法:

1 )查询时为字段起别名,与属性名一样:



2 )当字段名符合mysql要求,用了_,而属性名符合java驼峰规范,可以采用配置方式开启自动映射。

3) 自定义映射resultMap


2 多对一映射关系三种处理方式:

1 )级联方式


2 )使用association(sql语句同前)


3) 分步查询

第一步:准备好被调用的接口方法

第二步:在association中用select标签调用前面准备好语句,调用时利用column标签向被调用方法传递参数


3 一对多映射关系处理(两种处理方式)

1) 用collection


2)分步查询

第一步:先准备好将被调用的接口及SQL映射

第二步:然后进行主查询

三 实验收获

①在 MyBatis 中的映射,多对一使用 标签来映射多对一关系。一对多使用 标签来映射一对多关系。

② 标签的作用是:

将数据库查询结果中的列映射到 Java 对象的属性。

处理复杂的对象关系(如一对一、一对多、多对一)。

避免手动编写繁琐的结果集处理代码。

相关推荐
李昊哲小课2 天前
Spring Boot 4 旅游主题实战教程 阶段三:数据持久化
spring boot·后端·mybatis·旅游
datalover2 天前
MYBATIS=PLUS批量插入数据提效
mybatis
南城以南溫暖如初1472 天前
从零搭建24小时自助健身系统:技术选型与核心模块实战
java·spring boot·redis·mysql·vue·mybatis
小江的记录本3 天前
【ORM 框架】MyBatis-Plus 核心特性、条件构造器、分页插件、乐观锁插件(附《思维导图》、《问题排查与实践清单》和《面试高频考点汇总》)
java·windows·spring boot·python·spring·面试·mybatis
小江的记录本3 天前
【ORM框架】MyBatis核心原理、ORM思想、MyBatis vs JPA
java·数据库·后端·spring·spring cloud·oracle·mybatis
qq_485015214 天前
MyBatis-Plus 3.x FieldStrategy 作用
java·数据库·mybatis
布谷歌4 天前
如何自定义 MyBatis枚举处理器(EnumTypeHandler):分享从 “同包同名 shadow 覆盖” 到 “官方扩展点” 的重构经历
重构·mybatis
南城以南溫暖如初1474 天前
树洞交友系统架构设计与匿名聊天实战指南
java·spring boot·mysql·系统架构·vue·mybatis·交友
凯酱5 天前
MyBatis 中 OGNL 的使用:从入门到实战
java·tomcat·mybatis
蓝缘6 天前
解决main No MyBatis mapper was found in 的警告
mybatis