JPA在查询时复制了寄存器

时间:2015-04-20 14:46:26

标签: java hibernate jpa duplicates

我的Empresa实体有两个以这种方式映射的嵌套集合:

@ManyToMany(fetch = FetchType.EAGER, cascade = {CascadeType.PERSIST})
@JoinTable(
        name = "bandeiras_aceitas",
        joinColumns = {@JoinColumn(name = "empresa_id", nullable = false)},
        inverseJoinColumns = {@JoinColumn(name = "bandeira_id", nullable = false)})
private List<BandeiraCartao> bandeirasAceitas;

@OneToMany(fetch = FetchType.EAGER, cascade = {CascadeType.ALL}, 
        mappedBy = "empresa")
private List<HorarioAtendimento> horariosAtendimento;

我实际上在horariosAtendimento上有12条记录,bandeirasAceitas内只有1条记录用于我想要获取的Empresa。但是当我使用我的find方法时,'bandeirasAceitas'中有12条记录,问题是jpa(hibernate)生成的sql正在重复记录,如(horariosAtendimento上的记录数* bandeirasAceitas上的记录。我该如何解决这个问题?

0 个答案:

没有答案