">必赢国际437437.com_必赢国际437在线游戏_437必赢国际网站

您现在的位置:必赢国际437437.com_必赢国际437在线游戏_437必赢国际网站 > 在线投稿 >  > 正文

同时可以标识出用这个字段值可以区分其他对象实例

2018-10-16 22:14http://www.baidu.com四川成人高考网

  在现实的项目中进行数据库建模时,我们要遵循数据库设计范式的要求,会对现实中的业务模型进行拆分,封装在不同的数据表中,表与表之间存在着的对应关系。进而,我们对数据库的增删改查操作的主体,也就从单表变成了多表。那么Mybatis中是如何实现这种多表关系的映射呢?

  resultMap 元素是 MyBatis 中最重要最强大的元素。它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西,而且在一些情形下允许你做一些 JDBC 不支持的事 情。 事实上, 编写相似于对复杂语句联合映射这些等同的代码,也许可以跨过上千行的代码。必赢国际437在线游戏

  有朋友会问,之前的示例中我们没有用到结果集,不是也可以正确地将数据表中的数据映射到Java对象的属性中吗?是的。这正是resultMap元素设计的初衷,就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们的关系。

  • constructor - 类在实例化时,用来注入结果到构造方法中(本文中暂不讲解)

  • id - 作用与result相同,同时可以标识出用这个字段值可以区分其他对象实例。可以理解为数据表中的主键,可以定位数据表中唯一一笔记录

  • association - 关联,简单的讲,就是“有一个”关系,如“用户”有一个“帐号”

  • collection - 集合,顾名思议,就是“有很多”关系,如“客户”有很多“订单”

  • discriminator - 使用结果集决定使用哪个个结果映射(暂不涉及)

  想查询出订单的时候 去给我关联查询出该订单所属于的用户信息。(查询一张表)

  3 查询2个表 自己整一个pojo类 把需要用到的user表的字段 和order表的字段全都写进去 直接用resultType