Java hibernate搜索的复合方面
我有两个实体:Java hibernate搜索的复合方面,java,hibernate,lucene,hibernate-search,Java,Hibernate,Lucene,Hibernate Search,我有两个实体:Action和User具有多对一关系。 我搜索操作,希望有一个用户名方面,但数据库中没有全名列,我有名字和姓氏 有没有办法在hibernate搜索中创建一个结合使用firstName和lastName的组合方面?或者有没有办法创建一个组合字段fullName,该字段将存在于搜索索引中(带有一个方面),但不存在于数据库中 映射如下所示: @Entity public class Action { ... @IndexEmbedded private Use
Action
和User
具有多对一关系。我搜索操作,希望有一个
用户名
方面,但数据库中没有全名
列,我有名字
和姓氏
有没有办法在hibernate搜索中创建一个结合使用firstName
和lastName
的组合方面?或者有没有办法创建一个组合字段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;
}
您可以在用户对象的方法上使用@Facet和@Field 因此,您可以定义如下内容:
@Facet
@Field
public String getFullName() {
return new StringJoiner(" ").add(firstName).add(lastName).toString();
}
您可以在用户对象的方法上使用@Facet和@Field 因此,您可以定义如下内容:
@Facet
@Field
public String getFullName() {
return new StringJoiner(" ").add(firstName).add(lastName).toString();
}