左连接带来2个不同的对象

时间:2011-04-27 13:52:41

标签: java sql hibernate jpa jpql

我无法取得更好的头衔,如果有人能做到,请帮助我!标签也是如此。

我已经制作了一个JPQL来为我带来一个带有其他对象列表的对象。

正在发生的事情是。

我在Novidade(DB)有两件物品。

我在ComentarioNovidade(DB)中有2件物品。

来自Novidade的1件物品连接到ComentarioNovidade的所有2件商品。另一个没有ComentarioNovidade相关。

JPQL返回一个Novidade列表(它应该是)

我试图让它返回一个包含所有ComentarioNovidade的Novidade,如果有的话。

它返回包含Novidade和ComentarioNovidade的3个对象分开。 ComentarioNovidade

我的JPQL是这样的:

from Novidade as n left outer join n.comentariosNovidade

班诺维达德:

@Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="CodNovidade")
    private Integer codNovidade;

    @Column(name="Mensagem")
    private String mensagem;

    @Column(name="CodigoCidade")
    private int codCidade;

    @Column(name="CodigoBairro")
    private int codBairro;

    @Column(name="MesmoBairro")
    private String mesmoBairro;

    @OneToMany
    @JoinColumn(name="CodNovidade")
    private List<ComentarioNovidade> comentariosNovidade;

ComentarioNovidade课程:

@Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="CodComentarioNovidade")
    private Integer codComentarioNovidade;

    @Column(name="Comentario")
    private String comentario;

    @ManyToOne
    @JoinColumn(name="CodNovidade")
    private Novidade novidade;

    @ManyToOne
    @JoinColumn(name="CodUsuario")
    private Usuario usuario;

1 个答案:

答案 0 :(得分:0)

一位朋友帮我解决了这个问题。

我的JPQL就这样结束了:

select distinct n from Novidade as n left outer join fetch n.comentariosNovidade