2
respostas

Relacionamento springdata

@Entity
@Table(name = "tb_unidade_orcamentaria")
public class UnidadeOrcamentaria {

    @Id
    private int uoCodigo;

    private String uoDescricao;

    @OneToMany
    @JoinColumn(name = "uo_codigo_fk")
    private List<UnidadeDespesa> unidadesDespesa;

    public int getUoCodigo() {
        return uoCodigo;
    }

    public String getUoDescricao() {
        return uoDescricao;
    }

    public List<UnidadeDespesa> getUnidadesDespesa() {
        return unidadesDespesa;
    }
}
--------------------//--------------------
@Entity
@Table(name = "tb_unidade_despesa")
public class UnidadeDespesa {

    @EmbeddedId
    private UnidadeDespesaId id;

    private String udDescricao;

    @MapsId("uoCodigoFk")
    @ManyToOne
    @JoinColumn(name = "uo_codigo_fk")
    private UnidadeOrcamentaria uo;

    public UnidadeDespesa() {

    }

    public UnidadeDespesa(UnidadeDespesaId id, String udDescricao, UnidadeOrcamentaria uo) {

        this.id = id;
        this.udDescricao = udDescricao;
        this.uo = uo;
    }

    public UnidadeDespesaId getId() {
        return id;
    }

    public String getUdDescricao() {
        return udDescricao;
    }
}

------------------------------//----------------------

@Embeddable
public class UnidadeDespesaId implements Serializable {

    private static final long serialVersionUID = 1L;
    @Column(name = "ud_codigo")
    private int udCodigo;
    @Column(name = "uo_codigo_fk")
    private int uoCodigoFk;

    public UnidadeDespesaId() {

    }

    public UnidadeDespesaId(int udCodigo, int uoCodigoFk) {
        super();
        this.udCodigo = udCodigo;
        this.uoCodigoFk = uoCodigoFk;
    }

    public int getUdCodigo() {
        return udCodigo;
    }

    public int getUoCodigoFk() {
        return uoCodigoFk;
    }

Pessoal tenho o código acima e estou usando spring boot com springdata Alguém sabe me dizer como deixar lazy essa parte @OneToMany @JoinColumn(name = "uo_codigo_fk") private List unidadesDespesa; ? Quando dou um findAll() ele traz as unidadesDespesa também.

2 respostas

Oi Franklin, tudo bem?

Coloque @OneToMany(fetch = FetchType.LAZY)

Abraço!

Não funciona, já tentei entitygraph também mas sem exito, aí já não sei se fiz algo de errado.