为什么collection标签下还要写column="goods_id"

来源:3-1 OneToMany对象关联查询

小老哥丶

2020-07-24 13:05:25

为什么collection标签下还要写属性:

column="goods_id"

这个column属性的值不是对应数据表的字段名称吗,


例如这段代码<id property="goods.goodsId" column="goods_id"></id>

意思难道不是说

从对应数据表下的,叫做goods_id的字段获取信息,赋值给实体类的goods类成员下的goodsId成员吗


那么,既然集合类成员的值已经从select语句goodsDetail.selectByGoodsId获取了

那为什么还要写column="goods_id",有什么意义,

写回答

1回答

好帮手慕小尤

2020-07-24

同学你好,1. resultMap下面的,如果数据库表中的字段名和实体类中的属性名一致可以不写,但建议写上,如下图所示:

http://img.mukewang.com/climg/5f1a9ba00921840112250157.jpg

2. column属性后边跟的值是对应的数据库中的字段名。property属性后边跟的值是对应的实体类中的属性名。

    当数据库中的字段名和实体类中的属性名一致时,底层可以实现自动映射,而不一致时,则可以使用这种方式使其关联起来。

3. 其作用如下:id用来标识哪个字段是主键。在进行结果映射的过程中,一旦知道了主键,就可以借由主键来区分不同的实体对象,提高处理结果集的性能,特别是缓存和嵌套结果映射(即连接映射)的性能。官网上的解释如下:

http://img.mukewang.com/climg/5f1a9b7809757b5b15200222.jpg

 如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0

0 学习 · 8016 问题

查看课程