Boa tarde,
estou iniciando em Java, e me deparei com um problema que para vcs deve ser fácil de resolver:
estou usando hibernate com Jpa usando annotations.
estou acessando uma tabela chamada cadastro. este é meu código:
Session session = NewHibernateUtil.getSession();
session.beginTransaction();
Query query = session.createQuery("from Cadastro");
Iterator ci = query.iterate();
cadastro = (Cadastro) ci.next();
agora posso acessar todos os campos da minha classe através de:
// captura campos
cadastro.getCodigo();
cadastro.getNome();
// seta campos
cadastro.setCodigo(4);
cadastro.setNome("TESTE JAVA");
Ok. tudo sem problemas até aqui.
o que quero é algo equivalente , um método ou algo como:
cadastro.getCampo("CODIGO");
cadastro.getCampo("NOME");
cadastro.setCampo("CODIGO",1);
cadastro.setCampo("NOME","TESTE JAVA");
ou seja “algo” que me retorne/sete o conteúdo através do NOME do campo…
sei que poderia criar os métodos dentro do meu bean Cadastros tipo:
public Object getCampo(String campo){
}
e lá colocar um switch ou varios ifs para testar o parâmetro passado…
mas acho que deve haver uma forma mais elegante para isso… e com bem menos escrita de codigo, além do mais para cada bean criado teria que criar estes metódos e testar cada campo atraves do parametro passado, imagine 30 campos !!!
resumindo : preciso de “Algo” que me retorne/sete o conteudo de um campo atraves do NOME do CAMPO em si, não pelos sets/gets dos Beans.
obrigado