小编Ady*_*ior的帖子

如何将@FieldBridge 实现到@EmbeddedId 字段

当存在@EmbeddedId 字段时,应实现自定义字段桥。有一个关于它的功能打开https://hibernate.atlassian.net/browse/HSEARCH-1879。但它还没有准备好。

在这种情况下,正确实现的接口是TwoWayFieldBridge

下面是我对具有 5 个字段的复合 ID 的实现。

public class ChavePrimariaAcompanhamentoBridge implements TwoWayFieldBridge {

    @Override
    public void set(String name, Object value, Document document, LuceneOptions luceneOptions) {

        AcompanhamentoPK chavePrimaria = (AcompanhamentoPK) value;

        Integer ano = chavePrimaria.getAno();
        Integer mes = chavePrimaria.getMes();
        Long codigoCredenciada = chavePrimaria.getCredenciada().getCodigo();
        Long codigoPosto = chavePrimaria.getPostoAtendimento().getCodigo();
        Integer numeroSequencial = chavePrimaria.getNumeroSequencial();

        luceneOptions.addNumericFieldToDocument("mes", mes, document);
        luceneOptions.addNumericFieldToDocument("ano", ano, document);
        luceneOptions.addNumericFieldToDocument("credenciada.codigo", codigoCredenciada, document);
        luceneOptions.addNumericFieldToDocument("postoAtendimento.codigo", codigoPosto, document);
        luceneOptions.addNumericFieldToDocument("numeroSequencial", numeroSequencial, document);
    }

    @Override
    public Object get(String name, Document document) {

        AcompanhamentoPK …
Run Code Online (Sandbox Code Playgroud)

hibernate-search

4
推荐指数
1
解决办法
947
查看次数

标签 统计

hibernate-search ×1