mybatis 学习总结二 多表查询

多表查询是mybatis 最繁琐的处理:具体实现大体两种思路,

一种是把多表数据对应实体类数据一起放到VO类中,这样传参或者接收值类型就可指定VO。这样做返回的多表数据多做几个vo即可。

另一种是在 Daomapper.xml 中配置多表查询的数据,把想要的数据封装到一个POJO中进行返回。这样OGNL也可得到${user.account.id}

另外现在流行的注解式开发同第二种相似就是先要把account 所有数据填充 ,并且把user其他必要信息补齐,返回user对象。

以下是实例:用户User 和 账户Account 存在一对多 关系,即一个用户 可能有多个银行卡账户

<1>使用vo 结构。

 

<2> 使用对象封装数据。

扫描二维码关注公众号,回复: 9091873 查看本文章

以上就是简单的多表数据的处理,除了1对多,如果刚才的结构模型变为多对1呢?User 类中有List<Account>

 

好,以上是一对多,多对一,那常见的用户角色多对多模型 ,肯定也是用collection 标签property 代表结果集存在那个属性 ,offType 代表List中的对象类型。

 另外,这里的多表查询用的 collection 和 associate 标签默认都是延迟加载的。

发布了28 篇原创文章 · 获赞 5 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/java_utf8/article/details/104135751