Autor |
Mensagem |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 13/01/2009 16:48:25
|
LeonardoBH
Equipe
Membro desde: 08/01/2009 12:28:04
Mensagens: 6
Offline
|
Olá, boa tarde, seria que tem como alguem me ajudar no relacionamento Many to many?
Eu tenho duas tabelas, a tabela Processo, e a Tabela Advogado, é um relacionamento n para n. Criei uma terceira tabela Advogado_Processo, nela contem o Código do Advogado e do processo.
Meu Bean Advogado tá assim:
@Entity
@SequenceGenerator(name="sq_advogado", sequenceName="sq_advogado")
public class Advogado {
Integer Codigo;
String nome;
String endereco;
String cep;
Cidade cidade;
Uf uf;
String telefone;
String celular;
String email;
String OAB;
Tipoadvogado Tipo_adv;
Sets...e gets....
Quem puder me ajudar fico grato,
Leonardo
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 13/01/2009 21:01:29
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Como está os outros beans?
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 15/01/2009 15:43:48
|
LeonardoBH
Equipe
Membro desde: 08/01/2009 12:28:04
Mensagens: 6
Offline
|
Esse Bean é o que relaciona a Classe Advogado com a Classe Processo:
package org.neoframework.exemplo.bean;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import br.com.linkcom.neo.validation.annotation.Required;
@Entity
@SequenceGenerator(name="sq_adv_proc", sequenceName="sq_adv_proc")
public class Advogado_processo {
Integer codigo;
Advogado advogado;
Processo processo;
@Id
@GeneratedValue(strategy=GenerationType.AUTO , generator="sq_adv_proc")
public Integer getCodigo() {
return codigo;
}
public void setCodigo(Integer codigo) {
this.codigo = codigo;
}
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="advogado")
@Required
public Advogado getAdvogado() {
return advogado;
}
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="processo")
@Required
public Processo getProcesso() {
return processo;
}
public void setAdvogado(Advogado advogado) {
this.advogado = advogado;
}
public void setProcesso(Processo processo) {
this.processo = processo;
}
}
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 15/01/2009 15:45:56
|
LeonardoBH
Equipe
Membro desde: 08/01/2009 12:28:04
Mensagens: 6
Offline
|
Esse é o Bean Processo:
package org.neoframework.exemplo.bean;
import java.sql.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import br.com.linkcom.neo.bean.annotation.DescriptionProperty;
import br.com.linkcom.neo.validation.annotation.Required;
@Entity
@SequenceGenerator(name="sq_processo", sequenceName="sq_processo")
public class Processo {
Integer codigo;
String tribunal;
String vara_comarca;
String descricao;
Date data_cadastro;
String numero;
@Required
@DescriptionProperty
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
public String getDescricao() {
return descricao;
}
@Required
public String getVara_comarca() {
return vara_comarca;
}
@Id
@GeneratedValue(strategy=GenerationType.AUTO , generator="sq_processo")
public Integer getCodigo() {
return codigo;
}
public void setCodigo(Integer codigo) {
this.codigo = codigo;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
@Required
public String getTribunal() {
return tribunal;
}
public void setTribunal(String tribunal) {
this.tribunal = tribunal;
}
public void setVara_comarca(String vara_comarca) {
this.vara_comarca = vara_comarca;
}
public Date getData_cadastro() {
return data_cadastro;
}
public void setData_cadastro(Date data_cadastro) {
this.data_cadastro = data_cadastro;
}
}
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 15/01/2009 15:49:24
|
LeonardoBH
Equipe
Membro desde: 08/01/2009 12:28:04
Mensagens: 6
Offline
|
Eu queria que no crud de processos, que pudessem ser inseridos vários advogados.
Muito obrigado pela ajuda Pedro.
Abraço
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/01/2009 14:06:42
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
É recomendável utilizar 2 relacionamentos ao invés de um manytomany.
O hibernate não suporta muito bem (via annotations) uma tabela de ligacao com um pk sequencial (ele ignora o sequencial na hora de salvar)
É melhor voce desenhar o relacionamento dessa forma:
Processo -> OneToMany para AdvogadoProcesso
AdvogadoProcesso -> ManyToOne para Advogado
No final das contas vc terá o many to many, só que terá que usar um getter a mais..
No crud de processo vc faz assim
Code:
<t:property name="tribunal"/>
<t:property name="vara_comarca"/>
.
.
.
<t:detalhe name="listaAdvogadoProcesso"> -->propriedade onetomany
<t:property name="advogado"/>
--> Coloque aqui um hidden para o id de advogadoprocesso
</t:detalhe>
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 18/01/2009 14:09:00
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
outra coisa.. não use underscores (_) para separar os nomes....
data_cadastro -> dataCadastro
e não use letras maiusculas para atributos
Tipoadvogado Tipo_adv; -> Tipoadvogado tipoAdv;
E também use nomes completos:
tipoAdv; -> tipoAdvogado
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 19/01/2009 09:13:51
|
LeonardoBH
Equipe
Membro desde: 08/01/2009 12:28:04
Mensagens: 6
Offline
|
Valeu Rógel, consegui resolver já.
Um abraço
Obrigado.
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 20/05/2009 14:10:07
|
daniel.netti
Equipe
Membro desde: 20/05/2009 14:06:28
Mensagens: 1
Offline
|
Como você conseguiu resolver? Estou com um problema parecido, poderia postar a solução?
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 20/05/2009 21:48:57
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
Olá amigo... que problema voce está tendo???
Posta aí que a gente resolve..
até mais
|
|
 |
|