为什么要用resultMap元素:
用于解决实体类属性名与数据库表中字段名不一致的情况,借助resultMap元素我们可以将查询结果映射成实体对象
<resultMap>元素中的type 属性表示需要的 POJO,id 属性是 resultMap 的唯一标识。
子元素 <constructor> 用于配置构造方法。当一个 POJO 没有无参数构造方法时使用。
子元素 <id> 用于表示哪个列是主键。允许多个主键,多个主键称为联合主键。
子元素 <result> 用于表示 POJO 和 SQL 列名的映射关系。
子元素 <association>、<collection> 和 <discriminator> 用在级联的情况下
没有做映射处理的情况下,字段名和属性名不一致,取值为空或者Null,在做了映射处理resultMap后可以正常地取值。
多表联查
什么是是级联:
级联(cascade),是指多个对象之间的映射关系,建立数据之间的级联关系提高管理效率
一对一级联步骤:
1验证:编写测试类验证级联关系;
2级联映射:
利用 <association> 元素完
成一对一级联;
3创建映射器
4创建关联pojo
一对一级联时,以对象方式存
储关联关系;
级联注意事项:
1 要根据实际情况选择级联(尽量不用)
2 多层关联式,超过三层关联时尽量少用级联