jychenok 2010-09-23 17:57
浏览 217
已采纳

hibernate奇怪的查询问题,生成的sql能够查询出三条子表数据,但是主vo里的子表对象集只有一条

先看配置文件:
主表:
[code="java"]




[/code]
子表:
[code="java"]

[/code]
vo类:
[code="java"] public Set<?> getExPartPurchaseBillBs() {
return exPartPurchaseBillBs;
}

public void setExPartPurchaseBillBs(Set<ExPartPurchaseBillB> exPartPurchaseBillBs) {
    this.exPartPurchaseBillBs = exPartPurchaseBillBs;
    System.out.println(exPartPurchaseBillBs.size());
}[/code]

Hibernate生成的sql如下(查询子表的sql):
Hibernate: select expartpurc0_.source_bill_id as source3_1_, expartpurc0_.bill_id as bill1_1_, expartpurc0_.bill_id as bill1_246_0_, expartpurc0_.ts as ts246_0_, expartpurc0_.source_bill_id as source3_246_0_, expartpurc0_.part_id as part4_246_0_, expartpurc0_.part_no as part5_246_0_, expartpurc0_.part_name as part6_246_0_, expartpurc0_.part_unit_name as part7_246_0_, expartpurc0_.quantity as quantity246_0_, expartpurc0_.unit_price as unit9_246_0_, expartpurc0_.price as price246_0_, expartpurc0_.complete_quantity as complete11_246_0_, expartpurc0_.debt_quantity as debt12_246_0_, expartpurc0_.depot_id as depot13_246_0_, expartpurc0_.depot_name as depot14_246_0_, expartpurc0_.remark as remark246_0_, expartpurc0_.status as status246_0_ from emisdemothree.ex_part_purchase_bill_b expartpurc0_ where ( expartpurc0_.status!=0) and expartpurc0_.source_bill_id=?
到mysql中执行查找出三条数据
但是打印出的数据为1,真不晓得是因为啥子原因了,求解答!!!!

  • 写回答

1条回答 默认 最新

  • lizhiyezi 2010-09-23 19:00
    关注

    重写equals,hashcode函数

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝