Pessoa, seguinte… criei a minha entity pelo netbeans, ele cria direitinho com as anotacoes
agora consigo eu desenvolver uma classe q o usuario me passe um objeto qualquer, eu varra a classe daquele objeto, e atraves das annotations do jpa recupere quais os campos q nao podem ser nulos(ate aqui eu ja consegui fazer) e verificar se o objeto q ele me passou esses campos estao nulos ou nao??
legal. e me ajudar tu consegue??? eu cheguei ate aqui soh:
TbCaixacaixa=newTbCaixa();caixa.setNmUsuarioAbertura("binhoca");Classclasse=caixa.getClass();for(Fieldcampos:classe.getDeclaredFields()){Idid=campos.getAnnotation(javax.persistence.Id.class);if(id==null){Columnc=campos.getAnnotation(javax.persistence.Column.class);if(c!=null){if(c.nullable()==false){System.out.println("");System.out.println("Nome do Campo "+campos.getName());System.out.println("Nulo "+c.nullable());StringnomeMetodoCampo="get"+campos.getName();for(Methodmetodo:classe.getDeclaredMethods()){**********AQUIEUQUEROEXECUTAROMETODOEVEROQTEMDELE,SEENULLOUSECONTEMALGUMACOISA}}
nao consigo pegar o valor do campo… sabe como eu posso fazer issu?
fabioebner
cara eu achei o seguinte "q parece ser mais simples"
TbCaixacaixa=newTbCaixa();caixa.setNmUsuarioAbertura("binhoca");try{System.out.println(caixa.getClass().toString().substring(6));Class<?>classe=Class.forName(caixa.getClass().toString().substring(6));for(Fieldcampos:classe.getDeclaredFields()){Idid=campos.getAnnotation(javax.persistence.Id.class);if(id==null){Columnc=campos.getAnnotation(javax.persistence.Column.class);if(c!=null){if(c.nullable()==false){System.out.println("");System.out.println("Nome do Campo "+campos.getName());System.out.println("Nulo "+c.nullable());StringnomeMetodoCampo="get"+campos.getName();TbCaixaa=(TbCaixa)classe.newInstance();for(Methodmetodo:classe.getDeclaredMethods()){if(metodo.getName().equalsIgnoreCase(nomeMetodoCampo)){Objectae=metodo.invoke(a,newObject[]{});System.out.println("aee");}}}}}}}