Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Relacionamentos | Java - JPA - Hibernate - Spring MVC

Olá. Estou com uma dúvida referente à persistência de dados em relacionamentos de entidades. Criei uma entidade chamada MATRICULAS, onde terá um relacionamento com a entidade ALUNOS e outro com a entidade CURSOS. Ou seja, para efetuar a matrícula tem que ter um aluno e tem que ter um curso.

Abaixo segue a classe da entidade MATRICULAS

package br.com.rdgcloud.nexus.modelos;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;

@Entity
public class Matriculas {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private String situacao;
    private String observacoes;

    @OneToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "id", referencedColumnName = "id")
    private Alunos aluno;

    @OneToOne(cascade = CascadeType.ALL)
    @JoinColumn(name = "id", referencedColumnName = "id")
    private Cursos curso;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getSituacao() {
        return situacao;
    }

    public void setSituacao(String situacao) {
        this.situacao = situacao;
    }

    public String getObservacoes() {
        return observacoes;
    }

    public void setObservacoes(String observacoes) {
        this.observacoes = observacoes;
    }

    public Alunos getAluno() {
        return aluno;
    }

    public void setAluno(Alunos aluno) {
        this.aluno = aluno;
    }

    public Cursos getCurso() {
        return curso;
    }

    public void setCurso(Cursos curso) {
        this.curso = curso;
    }

    @Override
    public String toString() {
        return "Matriculas [id=" + id + ", situacao=" + situacao + ", observacoes=" + observacoes + ", aluno=" + aluno + ", curso=" + curso + "]";
    }
}

Quando eu dou submit no formulário, os campos ID, SITUACAO e OBSERVACOES são salvos no banco, porém os dados do ALUNO e do CURSO não são salvos.

Gostaria de uma ajuda pra saber onde estou errando.

1 resposta