| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 10:36:31
|
cafezin
JavaBaby
![[Avatar]](/images/avatar/a129dfae036aad9ad202e35d370d7efd.jpg)
Membro desde: 11/02/2010 09:36:42
Mensagens: 78
Offline
|
Bom dia Pessoal,
Será que é possível eu percorrer todos os métodos getters de uma classe e então usá-los?
Segue um exemplo
Eu sei que existe o getDeclaredMethods(). Então estou tentando algo do tipo
Obrigado pela ajuda
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 10:39:34
|
drsmachado
GUJ Expert
Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline
|
Antes de responder, qual a razão para isto?
Então, sim, é possível fazer isto sim.
|
Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".
Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 10:48:10
|
jyoshiriro
Virtual Machine Man
![[Avatar]](/images/avatar/e0679741969383717173a64cf04e0678.jpg)
Membro desde: 17/06/2009 14:14:39
Mensagens: 587
Offline
|
Já experimentou a biblioteca Apache Commons BeanUtils? http://commons.apache.org/beanutils/ Não ficou bem claro o que você quer mas imagino que essa biblioteca possa te ajudar. Ela deixa transparente muita coisa que daria trabalho via Reflection do Java.
This message was edited 2 times. Last update was at 26/05/2011 10:48:58
|
José Yoshiriro Ajisaka Ramos
OCUP Fundamental / SCJP 6 / SCWCD 5 / SCBCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 10:59:49
|
lgi2020
Virtual Machine Man
![[Avatar]](/images/avatar/1ac978c8020be6d7212aa71d4f040fc3.jpg)
Membro desde: 19/07/2006 10:51:13
Mensagens: 550
Localização: Rio de Janeiro
Offline
|
Pra trabalhar com Reflection tem também a Mirror DSL:
http://projetos.vidageek.net/mirror/
http://blog.caelum.com.br/mirror-dsl-facilitando-o-uso-da-api-de-reflection/
Abraços.
|
Lennon Jesus | CSM | SCJP
http://twitter.com/LennonJesus
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 11:09:07
|
cafezin
JavaBaby
![[Avatar]](/images/avatar/a129dfae036aad9ad202e35d370d7efd.jpg)
Membro desde: 11/02/2010 09:36:42
Mensagens: 78
Offline
|
drsmachado wrote:Antes de responder, qual a razão para isto?
Então, sim, é possível fazer isto sim.
drsmachado
É o seguinte, é criado dinamicamente na aplicacao alguns objetos, onde todos os atributos são do tipo String. (Ex: MinhaClasse.class)
Eu gostaria de pegar esses objetos e transforma-los em outros com uma estrutura especifica. E para que essa transformacao ocorra só preciso pegar o retorno dos metodos getters.
Já consigo filtrar só os getters, só preciso invoca-los e usar seus respectivos retornos(que serão sempre String por sinal).
Peço desculpas se ainda não fui muito claro.
Saudações
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 11:12:56
|
jyoshiriro
Virtual Machine Man
![[Avatar]](/images/avatar/e0679741969383717173a64cf04e0678.jpg)
Membro desde: 17/06/2009 14:14:39
Mensagens: 587
Offline
|
Então realmente acho que o Commons BeanUtils te ajudará:
http://commons.apache.org/beanutils/commons-beanutils-1.7.0/docs/api/org/apache/commons/beanutils/BeanUtils.html (acho que está aqui tua solução)
http://commons.apache.org/beanutils/commons-beanutils-1.7.0/docs/api/org/apache/commons/beanutils/BeanUtilsBean.html
|
José Yoshiriro Ajisaka Ramos
OCUP Fundamental / SCJP 6 / SCWCD 5 / SCBCD 5 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 11:34:09
|
rogelgarcia
GUJ Master
![[Avatar]](/images/avatar/861e8bae74e22a572164fdb59b1caa8b.jpg)
Membro desde: 21/06/2007 23:27:21
Mensagens: 1850
Offline
|
Tá faltando só dar uma lidinha nos métodos da classe Method... que seu problema tá resolvido...
Uma dica: Você deve "invocar" o método...
|
Rógel Garcia, criador do framework NEXT
http://www.nextframework.org
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 13:12:19
|
leoviniga
JavaGuru
![[Avatar]](/images/avatar/a09c01b96ecd8b9f6ea4a4d7fd8cd92c.jpg)
Membro desde: 06/01/2011 14:04:49
Mensagens: 222
Localização: Curitiba
Offline
|
rogelgarcia wrote:Tá faltando só dar uma lidinha nos métodos da classe Method... que seu problema tá resolvido...
Uma dica: Você deve "invocar" o método...
Também aconselharia a classe Method...quando precisei de algo semelhante ela tinha todos os recursos que eu precisava...
|
Boa sorte >>> Three Swedish switched witches watch three Swiss Swatch watch switches. Which Swedish switched witch watch which Swiss Swatch watch switch?
Ficar quieto quando se deveria protestar faz de um homem um covarde, protestar quando se deveria ficar quieto faz de um homem um idiota |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2011 13:33:35
|
cafezin
JavaBaby
![[Avatar]](/images/avatar/a129dfae036aad9ad202e35d370d7efd.jpg)
Membro desde: 11/02/2010 09:36:42
Mensagens: 78
Offline
|
Pois é rogelgarcia.
Eu tinha encontrado o metodo, mas nao tinha entendido como usa-lo. Mas deu certo já.
O que precisa ficar claro, se mais alguém tiver essa dúvida é o seguinte.
só diz respeito a classe mesmo. (Tudo bem, é óbvio mas nao tinha me dado conta)
E, para invocar basta chamar o metodo invoke(Object obj, Object[] args)
Onde o "obj" é o objeto que foi instanciado a partir desta classe e o args sao os parametros que o metodo precisa
Obrigado a todos e tenham um bom dia!
|
|
|
 |
|
|