Boa tarde galera, eu nao estou conseguindo sair do lugar… Travei em uma parte do meu trabalho. Eu estou fazendo um evento clique de mouse em um botao aonde eu passo como parametro um codigo (inteiro) clico e ele da um SELECT no oracle e tal… Eu uso o ResultSet e jogo os resultados pra dentro de um objeto da classeA_Bean que eu criei. Até ai tudo bem, mas o meu problema é que eu tenho 5 classes BEAN diferentes. classeA_Bean, classeB_Bean,classeC_Bean,classeD_Bean,classeExecutiva_Bean.
No metodo que realiza o SELECT no banco eu salvo dentro de um objeto da classeA_Bean, eu acredito que criando um objeto de cada uma das 5 classes e realizando o mesmo processo tem como fazer isso, mas eu queria fazer algo diferente… Eu nao sei mas acho que fazer isso é muito amador, e gostaria de aprender como fazer isso de uma maneira mais otimizada. Ai vai os codigos:
[code]public classeA_Bean select(int codigo) throws FileNotFoundException, IOException, SQLException {
Connection conn = null;
cab = new classeA_Bean();
String tabelas[] = new String[5];
tabelas[0] = "classeA";
tabelas[1] = "classeB";
tabelas[2] = "classeC";
tabelas[3] = "classeD";
tabelas[4] = "executiva";
try {
for (int i = 0; i <= tabelas.length; i++) {
sql = "select * from " + tabelas[i] + " where codigo =" + codigo;
conn = getConnection();
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
rs.next();
cab.setCodigo(rs.getInt("codigo"));
cab.setNumero_voo(rs.getInt("numero_voo"));
cab.setAcento(rs.getInt("acento"));
cab.setNome_cliente(rs.getString("nome_cliente"));
cab.setValor_passagem(rs.getDouble("valor_passagem"));
cab.setData(rs.getString("data"));
if(cab.getCodigo() == codigo){
cab.setClasse(tabelas[i]);
break;
}
}
} catch (ClassNotFoundException e) {
} catch (SQLException e) {
} finally {
conn.close();
}
return cab;
}[/code]
Valeu galera!