| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 14:05:47
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
Estranho eu tava fazendo um teste aki.. e não implementei Cloneable.. e mesmo assim funcionou...
POr que Será?
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 14:07:13
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
No meu sistema, os Pojo's tem um ancestral em comum, que é o Entity. Este implementa Serializable. Assim, todos os Pojo's são clonáveis.
E é como disse: não acho que seja um problema implementar uma interface marcadora.
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 14:09:51
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
colored wrote:Estranho eu tava fazendo um teste aki.. e não implementei Cloneable.. e mesmo assim funcionou...
POr que Será?
Testou com o Reflection?
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 14:55:47
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
Sim Testei. Com Reflection.. Eh q nao tinha percebido meu codigo e achei q estava usando o clone(); agora fica a duvida.. pq c for colocar esse metodo em todos os pojos vai ser tenso.. pq tem bastante aki no sistema.. agora com reflection ta no eskema já, já ta tratada a exception.. so precisar fazer o casting mesmo.. em relação ao uso eu teria que clonar as variaveis de instacia tb.. então qto 1 qto o otro daria na mesma...
This message was edited 1 time. Last update was at 13/05/2010 15:02:01
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 15:01:20
|
peczenyj
Moderador
![[Avatar]](/images/avatar/299dc35e747eb77177d9cea10a802da2.jpg)
Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline
|
Acho que esta forma é também interessante.
|
http://pacman.blog.br
'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.' |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 15:09:01
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
colored wrote:Sim Testei. Com Reflection..
Eh q nao tinha percebido meu codigo e achei q estava usando o clone();
agora fica a duvida.. pq c for colocar esse metodo em todos os pojos vai ser tenso.. pq tem bastante aki no sistema..
agora com reflection ta no eskema já, já ta tratada a exception.. so precisar fazer o casting mesmo..
em relação ao uso eu teria que clonar as variaveis de instacia tb.. então qto 1 qto o otro daria na mesma...
Testei aqui com o Reflection e vai clonar todos os objetos internos também.
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 15:28:46
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
Bom mas olha soh.. marck... eu fiz o seguinte... e me retornou... Parece q ele tb alterou o original... Acho q ele Clona o Objeto e so faz referencia ao objeto que eh 1 atributo desse objeto.... Pelo Quando eu pego este objeto do banco ele tem esse problema.. agora c eu crio um objeto na hora ele num da... muito estranho...
This message was edited 2 times. Last update was at 13/05/2010 15:40:41
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 15:31:13
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
peczenyj...
public class MinhaClasse{
// outros contrutores
public MinhaClasse(MinhaClasse c){
/* entre aqui com a logica de clonagem, tipo
this.atributo = c.getAtributo(); */
}
// o resto da minha classe...
}
MinhaClasse clone = new MinhaClasse(objetoASerClonado);
Verdade boa ideia tb..
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 15:34:16
|
Marck
Virtual Machine Man
![[Avatar]](/images/avatar/efc9ea3e0c2ed2c2481fe1252019266e.jpg)
Membro desde: 15/08/2006 16:15:11
Mensagens: 598
Offline
|
Hum... Estranho cara, aqui funcionou:
Utilizando aquela classe de reflection, não é?
|
"A vida me deu tudo que eu pedi. Agora se o que eu pedi foi pouco, ai o problema já é meu!". Sartre
Besteiras sobre programação
http://toobject.wordpress.com/
DataModelDinamic |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 15:53:37
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
Sim Com akela mesma kkkk.
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/05/2010 16:35:31
|
peczenyj
Moderador
![[Avatar]](/images/avatar/299dc35e747eb77177d9cea10a802da2.jpg)
Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline
|
Agora eu fiquei pensando qual o motivo para clonar um objeto que justifique usar o método clone ou algo mais elaborado.
Talvez seja o caso cogitar usar objetos imutáveis em alguns momentos. Por exemplo, um Carro, uma vez que eu criei o objeto, não deveria ser possivel alterar os seus atributos a menos que vc gere um novo carro. Dependendo do seu domínio isso pode fazer sentido E clonar este carro ou ter varias variaveis que apontam para a mesma instância não seria um problema devido a imutabilidade.
|
http://pacman.blog.br
'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.' |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/05/2010 07:40:24
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
Vo utilizar isso. para comparar objetos..
pq se por exemplo eu tenho um usuario ja do banco...
blz.. mas eu preciso q esse usuarioAuxiliar mantenha os dados iniciais...
e se eu fizesse isso quando eu alterasse os dados de usuario afetaria tb o usuarioAuxiliar ..
por isso que preciso fazer.
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/05/2010 09:06:31
|
peczenyj
Moderador
![[Avatar]](/images/avatar/299dc35e747eb77177d9cea10a802da2.jpg)
Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline
|
Certo mas... não seria o caso de usar o pattern State ou Memento?
|
http://pacman.blog.br
'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.' |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/05/2010 10:57:50
|
colored
GUJ Ranger
![[Avatar]](/images/avatar/c98a3fedd72195a304fba80ebaa320fe.jpg)
Membro desde: 07/06/2007 12:27:41
Mensagens: 864
Localização: SP
Offline
|
Sinceramente, eu procurei mta coisa sobre isso.. pq vou precisar utilizar isso varias vezes..
pq eh o seguinte.. no sistema aki.. o socio do chefe.. ele fez a parte de alterações..
e ele faz o seguinte... ele pega um objeto por exemplo com 20 atributos faz session.setAtribute de cada atributo..
e dps pega esse atributo e compra com o objeto no caso faz 20 if's...
enfim eu terminei toda minha parte. e fui ver a dela e ta esse monte de trankeira e falei pra arrumar isso..
ai eu to procurando soluções mais claras e limpas pra todas as melecas que ele fez entende..
neste caso eu procurei varias coisas me indicaram o Observer mas sei lá n deu mto certo, ai eu achei q esse clone resolveria um pk mais o problema..
mas eu n conheço esses 2 patterns c tem alguma exemplo simples ai???
vo dar uma procurada tb...
tipo vo falar meu problema ai vc por conhecer pod me dizer se rola ou não...
bom eu tenho objeto gravado no banco certinho..
ai tenho uma consulta talz cada linha eu mando por setProperty para o objeto do bean.. até ai blz.
agora ele crio uma pagina identica a d cadastro.. q so no muda no caso o botao q eh atualizar com metodo atualizar -.-..
qual eh minha ideia utilizar a msm pagina e faço um rendered do botão dependendo d qual ação terá q executar...
pra isso eu preciso quando eu seleciono um objeto na consulta ele executa 1 metodo...
como ele mando o objeto da consulta para um objeto do MB..
eu precisaria de uma copia pra comparar algumas coisas.
mas como disse eu n posso fazer usuario = usuarioAuxiliar
todos nos sabemos pq neh..
esse eh o problema.. qual pattern desse vc me indicaria?
|
Caelum - FJ 11, 21, 26, 27, 31, 57 =D
Developer of Something. |
|
|
 |
|
|