Hibernate @基于逻辑关系的索引

Hibernate @基于逻辑关系的索引,hibernate,hibernate-search,Hibernate,Hibernate Search,我有两个表(外部的,所以我不能修改它)。表只有逻辑关系(一个表有另一个表的引用ID),没有@OneTo*注释 Hibernate搜索是否可以索引此相关对象 代码示例: @Entity @Indexed @Table(name = "E1") public class E1 implements Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = "ID")

我有两个表(外部的,所以我不能修改它)。表只有逻辑关系(一个表有另一个表的引用ID),没有@OneTo*注释

Hibernate搜索是否可以索引此相关对象

代码示例:

@Entity
@Indexed
@Table(name = "E1")
public class E1 implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ID")
    private Long id;

    @Column(name = "NAME", length = 32, nullable = false)
    private String name;

    @Column(name = "E2_FK", nullable = false)
    @IndexedEmbedded    // ???? 
    private Long e2Id;
}

@Entity
@Table(name = "E2")
public class E2 implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ID")
    private Long id;

    @Column(name = "DESCRIPTION", length = 4000, nullable = false)
    @Field
    private String description;
}

不,在这种情况下,Hibernate搜索不能为关联对象编制索引。它对此一无所知。您的映射不包含任何Hibernate(搜索)指针,e2Id是另一个实体的主键@IndexedEmbedded用于关联实体


你为什么不把这说成是真的呢。您可以按照默认值延迟加载它们,以防您担心这些问题。

谢谢。这是外部模块witch提供的这个类,所以我不能在里面重新设计。老实说,我也不使用注释——只是重写代码示例以提高可读性。