Que a PAZ estaja convosco.
Alguém pode me dizer como faço para testar o tipo de objeto segundo o códiog abaixo?
Está dando erro quando tendo testar GregorianCalendar.
private void ExecutaTransacao(final String sbSQL) {
try {
//Prepara transação
PreparedStatement pstmt = Conexao.prepareStatement(sbSQL.toString());
//Preeche os valores
int i = 1;
for (Iterator it = lhmAtributosClasse.keySet().iterator(); it.hasNext(); ) {
String strNomeAtributo = new String(it.next().toString());
if (!strNomeAtributo.equals("NomeTabela") && !strNomeAtributo.substring(strNomeAtributo.length()-3, strNomeAtributo.length()).equals("Chv")) {
System.out.println(lhmAtributosClasse.get(strNomeAtributo) + " # Tipo # " + lhmAtributosClasse.get(strNomeAtributo).getClass().getSimpleName());
Object obj = lhmAtributosClasse.get(strNomeAtributo);
//Trata o dado antes de gravar
//pstmt.setDate(i, this.TrataDadosAGravar(lhmAtributosClasse.get(strNomeAtributo)));
if(obj instanceof GregorianCalendar) {
pstmt.setDate(i, (GregorianCalendar) obj); //===========> Aqui está o erro
} else if (obj instanceof String) {
pstmt.setString(i, (String) obj);
} else if (obj instanceof Integer) {
pstmt.setInt(i, (Integer) obj);
} else {
pstmt.setString(i, "Null");
}
i++;
}
}
//Mostra String SQL
System.out.println(sbSQL);
//Executa procedimento
pstmt.executeUpdate();
//Fecha procedimento
pstmt.close();
//Fecha conexão
Conexao.close();
} catch (SQLException errorSQL) {
JOptionPane.showMessageDialog(null, errorSQL.getMessage(), "Erro SQL", JOptionPane.ERROR_MESSAGE);
errorSQL.printStackTrace();
}
}
Obrigado desde já.