Hibernate Integridade Referencial

0 respostas
diogoprosoft

Galera estou com uma dificuldade nesse exemplo que estou testando aqui…

Bom preciso fazer com que ao inserir no banco a pessoa e o endereco preencha automaticamente o id_pessoa que está na classe cliente

Tem com fazer essa integridade referencial no hibernate annotations?

Meu Código

Classe Endereco

@Entity
@Table(name="endereco")
public class Endereco {

    @Id
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="endereco_sequence_generator")
    @SequenceGenerator(name="endereco_sequence_generator", sequenceName="seq_endereco",allocationSize= 1)
    @Column(name="id", nullable= false)
    private Long id;
    
    private String logradouro;
    
    private String numero;
    
    private String complemento;
    
    @OneToOne
    @JoinColumn(name = "pessoa_id", referencedColumnName="id")
    private Pessoa pessoa;
                                   ...
                gets and sets

Essa é a classe Pessoa

@Entity
@Table(name="pessoa")
public class Pessoa {

    @Id
    @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="pessoa_sequence_generator")
    @SequenceGenerator(name="pessoa_sequence_generator", sequenceName="seq_pessoa",allocationSize= 1)
    @Column(name="id", nullable= false)
    private Long id;
    
    @Column(name="nome", nullable= false)
    private String nome;        
                   ...
         gets and sets

Para inserir no banco estou fazendo assim

public class AdicionaProduto {

     public static void main(String[] args) throws Exception {
        Session session = new HibernateFactory().getSession();
        Produto p = new Produto();
                
        p.setNome("Pneu");
        p.setDescricao("Pirelli");
        p.setPreco(70.0);
        
        Transaction t = session.beginTransaction();
        session.saveOrUpdate(p);
        t.commit();
        System.out.println("Gravado com sucesso");
        System.out.println("ID do produto: " + p.getId());
        session.close();
     }

Aguardo ajuda de vcs, valeu

Criado 3 de junho de 2008
Respostas 0
Participantes 1