开发者社区> 问答> 正文

hibernate 多对多配置orm出的对象bug

举例说明

个人

@Entity

@Table(name = "baseinfo_enterprise")
public class APPLICANT {
// 行业类型

private List<TRADE_ASTYPE> trade_types;
@OneToMany(fetch=FetchType.EAGER)
@JoinTable(name = "relate_enterprise_tradetype", joinColumns = { @JoinColumn(name = "enterprise_id", referencedColumnName = "uuid") }, inverseJoinColumns = { @JoinColumn(name = "tradetype_id", referencedColumnName = "uuid") })

行业类型 @Entity
@Table(name = "base_astype")
public class TRADE_ASTYPE {

//个人
private List<APPLICANT> applicants;
@OneToMany(mappedBy="trade_types")
public List<APPLICANT> getApplicants() {
return applicants;
}

2个对象 对象关系是n:n 我配置无论是oneTomany 还是manyToMany 结果使用 criteria.list()查询个人List时候都可能会多出现一个结果

个人表

id   name 

1     张三

行业表

id  name

1  电子

2 航天

关联表 假设 张三对应这2个行业 那么得出的结果为什么是list 是2条记录呢

展开
收起
huc_逆天 2020-05-28 09:20:54 421 0
1 条回答
写回答
取消 提交回答
  •     criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    
    2021-02-21 01:28:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载