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>
正在回答 回答被采纳积分+1
同学你好!
这里next_deal_sn与deal_sn两个都是处理人编号,这里的column="next_deal_sn"并没有被用到。因为使用的是复合查询,所以你写为column="next_deal_sn"或column="deal_sn"都是可以的
补充:
假定通过外键查询学生的年级,可以直接在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>
祝学习愉快~
同学你好,
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"也是没有问题的。不过为了更加严谨,还要建议书写时能够和表内的外键名称保持一致,视频中略有疏漏,我们会及时反馈给相关人员还请同学多多包涵。
祝学习愉快~
- 参与学习 人
- 提交作业 323 份
- 解答问题 8263 个
本阶段将带你学习主流框架SSM,以及SpringBoot ,打通成为Java工程师的最后一公里!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星