1

与えられた例のテーブル

table: acknowledgement
==============
id,post_id,user_id


table: post
==============
id,content

table: attachment
==============
id,post_id,name

そしてまた

私のポストクラスで、コラムを手に入れました

@OneToMany(fetch=FetchType.EAGER, targetEntity=attachment.class, cascade=CascadeType.ALL)
@JoinColumn(name = "post_id", referencedColumnName="id")
private Set<attachment> file=null;

ユーザーがログインすると、システムにはユーザーIDが割り当てられるため、私のNativeQueryは

select *,case when p.id is null then false else true end as ack from post 
left join acknowledgement a on p.id =  a.post_id where a.user_id = :id

データ:

==================================
= id , content , acknowledgement =
==================================
= 1  , hello   ,  true           =
==================================
= 5  , hello 5 ,  false          =
==================================

私の質問は

  1. この場合、namedquery でネイティブ クエリを HQL に変換する方法を教えてください。

  2. 上記の1対多のような注釈を使用してケースを解決することは可能ですか?

注:私はhibernate 4.1.6 finalを使用しています

4

0 に答える 0