e aew pessoal boa tarde, td certo com vcs ? eh meu primeiro post por aki \o/
enfim eu estou tendo probelas com configuração do hibernate, quero q minhas tabelas no mysql tenham as chaves estrangeiras com update cascade e delete restrict, o delete não preciso mudar nd pq jah eh defaul o restrict, só q o update estou tendo mts dificuldades, jah pesquisei em otros sites, otros topicos daki msm, cada um m dando uma solução diferente, jah tentei um monte d annotation, jah troquei driver do mysql do hibernate.cfg.xml, jah achei gente flando q num tem solução q vo teh q tira o @ManyToOne e colocar um @OneToMany ou um @OnoToOne pra pode faze a integridade referencial, enfim mudar a estrutura das classes vai fica pra ultimo caso, m ajudem aew pessoa, meu codigo tah assim :
package Classes.Pendencias;
import Classes.Informacao.Pendencias.Prioridade;
import Classes.Informacao.Pendencias.TipoPendencia;
import Classes.Informacao.Softwares.VersaoSoftware;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import Classes.Pessoas.Programador;
import Classes.Pessoas.Analista;
import Classes.Pessoas.Cliente;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;
@Entity
@Table(name="pen_pendencias")
public class Pendencia {
@Id
@GeneratedValue
@Column(name="pen_codigo", length = 6)
private int codigo;
@Column(name="pen_problema", nullable=false, length = 100)
private String problema;
@Column(name="pen_tela", nullable=false, length = 100)
private String tela;
@Column(name="pen_caminhotela", nullable=false, length = 130)
private String caminhoTela;
@Column(name="pen_detalhes", nullable=false, length = 100)
private String Detalhes;
@JoinColumn(name="pri_codigo", nullable=false)
@ManyToOne
private Prioridade prioridade;
@JoinColumn(name="tpp_codigo", nullable=false)
@ManyToOne
private TipoPendencia tipoPendencia;
@JoinColumn(name="vso_codigo", nullable=false)
@ManyToOne
private VersaoSoftware versaoSoftware;
@JoinColumn(name="pes_cliente", nullable=false)
@ManyToOne
private Cliente clinte;
@JoinColumn(name="pes_analista", nullable=false)
@ManyToOne
private Analista analista;
@JoinColumn(name="pes_programador")
@ManyToOne
@Cascade({CascadeType.MERGE,CascadeType.PERSIST})
private Programador programador;
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getProblema() {
return problema;
}
public void setProblema(String problema) {
this.problema = problema;
}
public String getTela() {
return tela;
}
public void setTela(String tela) {
this.tela = tela;
}
public String getCaminhoTela() {
return caminhoTela;
}
public void setCaminhoTela(String caminhoTela) {
this.caminhoTela = caminhoTela;
}
public String getDetalhes() {
return Detalhes;
}
public void setDetalhes(String Detalhes) {
this.Detalhes = Detalhes;
}
public Prioridade getPrioridade() {
return prioridade;
}
public void setPrioridade(Prioridade prioridade) {
this.prioridade = prioridade;
}
public TipoPendencia getTipoPendencia() {
return tipoPendencia;
}
public void setTipoPendencia(TipoPendencia tipoPendencia) {
this.tipoPendencia = tipoPendencia;
}
public VersaoSoftware getVersaoSoftware() {
return versaoSoftware;
}
public void setVersaoSoftware(VersaoSoftware versaoSoftware) {
this.versaoSoftware = versaoSoftware;
}
public Cliente getClinte() {
return clinte;
}
public void setClinte(Cliente clinte) {
this.clinte = clinte;
}
public Analista getAnalista() {
return analista;
}
public void setAnalista(Analista analista) {
this.analista = analista;
}
public Programador getProgramador() {
return programador;
}
public void setProgramador(Programador programador) {
this.programador = programador;
}
}
meu hibernate.cfg.xml tah assim :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/persistenciajava?zeroDateTimeBehavior=convertToNull</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<property name="hibernate.current_session_context_class">thread</property>
<mapping class="Classes.Informacao.Pendencias.Prioridade"/>
<mapping class="Classes.Informacao.Pendencias.Status"/>
<mapping class="Classes.Informacao.Pendencias.StatusPendencia"/>
<mapping class="Classes.Informacao.Pendencias.TipoPendencia"/>
<mapping class="Classes.Informacao.Pendencias.TipoStatus"/>
<mapping class="Classes.Informacao.Pessoas.Login"/>
<mapping class="Classes.Informacao.Pessoas.Operadora"/>
<mapping class="Classes.Informacao.Pessoas.Telefone"/>
<mapping class="Classes.Informacao.Softwares.VersaoSoftware"/>
<mapping class="Classes.Pendencias.Pendencia"/>
<mapping class="Classes.Pessoas.Analista"/>
<mapping class="Classes.Pessoas.Cliente"/>
<mapping class="Classes.Pessoas.Empresa"/>
<mapping class="Classes.Pessoas.Funcionario"/>
<mapping class="Classes.Pessoas.Pessoa"/>
<mapping class="Classes.Pessoas.Programador"/>
<mapping class="Classes.Softwares.Software"/>
</session-factory>
</hibernate-configuration>
dah uma força aew pessoal
flw