resultMap中的id和collection标签,column属性为什么都是goods_id?

resultMap中的id和collection标签,column属性为什么都是goods_id?

http://img1.sycdn.imooc.com//climg/5dcf6bd9090c3b6919201080.jpg

老师,resultMap中的id和collection标签,column属性为什么都是goods_id?column属性是干什么用的?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,

resultMap下面的,如果数据库表中的字段名和实体类中的属性名一致可以不写,但建议写上,其作用如下:

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

官网上的解释如下:

http://img1.sycdn.imooc.com//climg/5dcfb70a0918641415320235.jpg

2、 是的,以上老师说的数据库代指了数据库中存储的数据表。

3、是的,老师说的collection 中的 goodsDetails这个属性,由于数据库中没有单独对应这个字段”,是指babytun数据库下的那张商品表没有这个字段

4、这个goods_id是指的是商品表中的字段goods_id。


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


好帮手慕阿莹 2019-11-16 16:00:45

同学你好,

column属性后边跟的值是对应的数据库中的字段名

property属性后边跟的值是对应的实体类中的属性名

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

http://img1.sycdn.imooc.com//climg/5dcfabb0097eaffc12380208.jpg


collection 中的 goodsDetails这个属性,由于数据库中没有单独对应这个字段 但是它可以去查http://img1.sycdn.imooc.com//climg/5dcfac2909c076a005570033.jpg

把查出来的结果映射到goodsDetails中。 我们需要对应用数据库中的goods_ id去查。

总结一下就是,

column属性后边跟的值是对应的数据库中的字段名

property属性后边跟的值是对应的实体类中的属性名

当数据库字段和实体类的属性不一致时,可以使用它们来关联一下。


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

  • 提问者 天才少年25 #1
    resultMap下面的id标签有什么用,可以不写吗?就是和collection平级的那个id标签。老师你所谓的数据库,是指数据库下面的数据表吧?你说的“collection 中的 goodsDetails这个属性,由于数据库中没有单独对应这个字段”,是指babytun数据库下的那张商品表没有这个字段吧?另外,商品表和商品详情表,都有goods_id字段,那collection的column的值goods_id,是哪个表中的goods_id呢?
    2019-11-16 16:17:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师