myBatis3之SQL映射的XML文件(resultMap元素之二)
myBatis3之SQL映射的XML文件(resultMap元素之二)
----------
?
?
高级结果映射
?
比如,我们如何映射下面这个语句?
你可能想把它映射到一个智能的对象模型,包含一个作者写的博客,有很多的博文,每篇博文有零条或多条的评论和标签。下面是一个完整的复杂结果映射例子(假设作者,博客,博文,评论和标签都是类型的别名)。?
?resultMap元素有很多子元素和一个值得讨论的结构。下面是resultMap元素的概念视图 :resultMap:
constructor :类在实例化时,用来注入结果到构造方法中?
idArg ID 参数;标记结果作为 ID 可以帮助提高整体效能
arg ?注入到构造方法的一个普通结果?
id : 一个ID 结果;标记结果作为ID 可以帮助提高整体效能?
result :注入到字段或JavaBean 属性的普通结果
association : 一个复杂的类型关联;许多结果将包成这种类型
嵌入结果映射 ? ?结果映射自身的关联,或者参考一个
collection : 复杂类型的集?
嵌入结果映射 ? ?结果映射自身的集,或者参考一个?
discriminator ?使用结果值来决定使用哪个结果映射
case ?基于某些值的结果映射?
嵌入结果映射 ? ?这种情形结果也映射它本身,因此可以包含很多相同的元素,
或者它可以参照一个外部的结果映射。
?
?
?
<id property="id" column="tag_id"/>
</collection>
column="tag_id"应该改成column="tag_id"吧?