2017-11-13 19 views
0

多対1の関係を持つActionUserの2つのエンティティがあります。
アクションを検索しましたが、user full nameファセットがありますが、full_nameカラムの代わりにfirst_namelast_nameがあります。休止状態の検索のための複合ファセット

firstNamelastNameを一緒に使用するハイバネート検索で結合されたファセットを作成する方法はありますか?または、検索インデックス(ファセット付き)に存在するが、データベースに存在しない組み合わせフィールドfullNameを作成する方法はありますか?

マッピングは以下の通りです:

@Entity 
public class Action { 

    ... 

    @IndexEmbedded 
    private User user; 

} 


@Entity 
public class User { 

    ... 

    @Facet 
    @Field(analyze = Analyze.NO) 
    private String firstName; 

    @Facet 
    @Field(analyze = Analyze.NO) 
    private String lastName; 

} 

答えて

2

あなたのUserオブジェクトのメソッドに@Facetと@Fieldを使用することができます。

@Facet 
@Field 
public String getFullName() { 
    return new StringJoiner(" ").add(firstName).add(lastName).toString(); 
} 

だからあなたのような何かを定義することができます