Olá Pessoal!
Estou lendo todos os métodos “get” de uma classe através do reflection, e preciso passar o valor destes como parâmetro
em um preparedstatement. Mas não estou conseguindo fazer o cast para int.
//Função q retorna o método
public Method getMethod(Object OClass, String pmethodname){
Method[] methods = OClass.getClass().getDeclaredMethods();
Method m = null;
for( Method method : methods ){
try {
if ( method.getName().indexOf( pmethodname ) != -1 ){
m = method;
}
} catch (IllegalArgumentException ex) {
throw new RuntimeException();
}
}
return m;
}
Neste método insert eu quero passar os parâmetros, que eu já preenchi no sql através de outros métodos.
Mais ou menos o código abaixo:
public void insert(Object OClass){
try{
PreparedStatement stmt = conn.prepareStatement(sqlInsert);
//nesta parte é que estou enrolado
getMethod( OClass,"get"+ Fields[2][x] ).invoke( OClass, new Integer(0));
stmt.setInt(x, ???? ); //como faco para convertê-lo
…
}
Obrigado