Quantcast
Channel: Programação - GUJ
Viewing all articles
Browse latest Browse all 33093

Duvida de como salvar objeto referenciado Hibernate - Java

$
0
0

@carvalhoromulo escreveu:

Bom dia a todos.
estou com uma dificuldade para salvar no banco minhas classes referenciadas.

Tenho 2 tabelas. sendo uma chamada estoque. e outra identificador.
a tabela estoque tem como campo chave o ID_ESTOQUE.
eu preciso colocar essa referencia na tabela identificador.

Se alguém puder me ajudar agradeço.

classe TB_ESTOQUE.


import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;

/**
*
* @author Romulo
*/
@Entity
@SequenceGenerator(name = "ID_ESTOQUE", sequenceName = "GEN_TB_ESTOQUE_ID")
public class TB_ESTOQUE implements Serializable {

@Id @GeneratedValue(strategy = GenerationType.AUTO, generator = "ID_ESTOQUE")
private int ID_ESTOQUE;
private String DESCRICAO;
private Double PRC_VENDA;


public int getID_ESTOQUE() {
    return ID_ESTOQUE;
}

public void setID_ESTOQUE(int ID_ESTOQUE) {
    this.ID_ESTOQUE = ID_ESTOQUE;
}

public String getDESCRICAO() {
    return DESCRICAO;
}

public void setDESCRICAO(String DESCRICAO) {
    this.DESCRICAO = DESCRICAO;
}

public Double getPRC_VENDA() {
    return PRC_VENDA;
}

public void setPRC_VENDA(Double PRC_VENDA) {
    this.PRC_VENDA = PRC_VENDA;
}

classe IDENTIFICADOR.


import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;

/**
*
* @author Romulo
*/
@Entity
@SequenceGenerator(name = "ID_IDENTIFICADOR", sequenceName = "GEN_TB_EST_IDENTIFICADOR_ID")
public class TB_EST_IDENTIFICADOR implements Serializable {

 @Id @GeneratedValue(strategy = GenerationType.AUTO, generator = "ID_IDENTIFICADOR")
 private int ID_IDENTIFICADOR;

 @OneToOne 
 @JoinColumn(name = "ID_ESTOQUE", referencedColumnName = "ID_ESTOQUE", insertable = false, updatable = false) 
 private TB_ESTOQUE ID_ESTOQUE  ;  

 
public int getID_IDENTIFICADOR() {
    return ID_IDENTIFICADOR;
}

public void setID_IDENTIFICADOR(int ID_IDENTIFICADOR) {
    this.ID_IDENTIFICADOR = ID_IDENTIFICADOR;
}

public TB_ESTOQUE getID_ESTOQUE() {
    return ID_ESTOQUE;
}

public void setID_ESTOQUE(TB_ESTOQUE ID_ESTOQUE) {
    this.ID_ESTOQUE = ID_ESTOQUE;
}

Metodo para salvar.


public void salva(TB_EST_IDENTIFICADOR identificador) throws HibernateException {

    Transaction tx_TB_EST_IDENTIFICADOR = session.beginTransaction();
    session.save(identificador);
    tx_TB_EST_IDENTIFICADOR.commit();
    session.close();     

}

Como estou realizando a inclusao.

// SALVA O ITEM DO ESTOQUE
TB_ESTOQUE item = new TB_ESTOQUE();
item.setDESCRICAO("AAA");
item.setPRC_VENDA(1.00);
new TB_ESTOQUE_DAO(HibernateUtil.getSessionBDLocal()).salva(item);

//SALVA O IDENTIFICADOR 
TB_EST_IDENTIFICADOR ident = new TB_EST_IDENTIFICADOR();  
ident.setID_ESTOQUE(item);
new TB_EST_IDENTIFICADOR_DAO(HibernateUtil.getSessionBDLocal()).salva(ident);

Mensagem de erro no terminal.

[AWT-EventQueue-0] WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 335544347, SQLState: HY000
[AWT-EventQueue-0] ERROR org.hibernate.util.JDBCExceptionReporter - GDS Exception. 335544347. validation error for column IDESTOQUE, value "** null **_"

Mensagens: 1

Participantes: 1

Ler tópico completo


Viewing all articles
Browse latest Browse all 33093


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>