xml中关联属性的设置

xml中关联属性的设置

标签association中的问题

1、property属性是否对应于实体类DealRecord中的private Employee dealer?

2、column这个属性是对应deal_record数据表中的字段名吗?为什么这里是next_deal_sn,是不是应该是deal_sn啊?deal_record数据表中没有next_deal_sn这个字段名啊


<association property="dealer" column="next_deal_sn" javaType="Employee">
<result property="name" column="ename" javaType="String"/>
<result property="post" column="epost" javaType="String"/>
</association>

 <select id="selectByClaimVoucher" resultMap="deal_record">

        select d.*,e.name ename,e.post epost from deal_record d

        left join employee e on d.deal_sn = e.sn

        where d.claim_voucher_id=#{cvid} order by d.deal_time;

    </select>

http://img1.sycdn.imooc.com//climg/6081ff9509a6b4c906680286.jpg

http://img1.sycdn.imooc.com//climg/6081ff95093d89da07680413.jpg


正在回答 回答被采纳积分+1

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

2回答
好帮手慕小脸 2021-04-24 09:49:55

同学你好!

这里next_deal_sn与deal_sn两个都是处理人编号,这里的column="next_deal_sn"并没有被用到。因为使用的是复合查询,所以你写为column="next_deal_sn"或column="deal_sn"都是可以的

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

补充:

假定通过外键查询学生的年级,可以直接在association内完成通过外键完成查询,那么此时的column就必须是书写正确的和表内的一致,例如:
<resultMap type="Student" id="studentResult">         
    <id property="id" column="id"/>
    <association property="grade" column="gradeId" select="com.imooc.dao.GradeDao.getGrade">
      </association> 
 </resultMap>

祝学习愉快~

好帮手慕小脸 2021-04-23 13:48:29

同学你好,

1、property属性是否对应于实体类DealRecord中的private Employee dealer?

答:是的

2、column这个属性是对应deal_record数据表中的字段名吗?为什么这里是next_deal_sn,是不是应该是deal_sn啊?deal_record数据表中没有next_deal_sn这个字段名啊

答:这里的next_deal_sn 可以是deal_sn也可以是next_deal_sn,这是因为next_deal_sn没有被实际用到,所以写为column="next_deal_sn"也是没有问题的。不过为了更加严谨,还要建议书写时能够和表内的外键名称保持一致,视频中略有疏漏,我们会及时反馈给相关人员还请同学多多包涵。

祝学习愉快~

  • 提问者 视线模糊 #1

    association标签中的这个column=""属性究竟是不是必须和数据库一致,还是可以自己命名啊?

    <association property="" column="" javaType="" >

    之前的回答是必须一致啊https://class.imooc.com/course/qadetail/285511

    http://img1.sycdn.imooc.com//climg/6082d32309a5fa3805550509.jpg


    2021-04-23 22:01:21
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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