我的问题是我有一个JTable总是重复打印第一行,并忽略以下数据。我认为这是问题代码。
我进行查询并将其转换为列表以填充我的JTable。我请你分析我的代码,看它是否正确。
try{
EntityManager em = EntityManagerUtil.getEntityManager();
em.getTransaction().begin();
Query query_resultados = em.createQuery("FROM "
+ "Resultados WHERE res_codigo LIKE "+aux);
List<Resultados> lista_resultados =
(List<Resultados>) query_resultados.getResultList();
for(int i=0; i<lista_resultados.size(); i++){
Resultados resultado = lista_resultados.get(i);
System.out.println("Teste: "+lista_resultados.get(i).getRes_anti_hbc_hbs());
System.out.println("i= "+i);
model.addRow(new Object[] {resultado.getRes_anti_hbc_hbs(),
resultado.getRes_anticorpos_irregulares(),
resultado.getRes_chagas(), resultado.getRes_codigo(),
resultado.getRes_data(), resultado.getRes_ggpd(),
resultado.getRes_hbs_aq(), resultado.getRes_hcv(),
resultado.getRes_hiv(), resultado.getRes_htlv_i_ii(),
resultado.getRes_malaria(), resultado.getRes_responsavel(),
resultado.getRes_sifilis(), resultado.getRes_t_mancha(),
resultado.getRes_tpg()});
}
}catch(Exception e){
JOptionPane.showMessageDialog(null,"Erro: "+e);
}
答案 0 :(得分:0)
在Java中,通常使用以下内容迭代Java ResultSet:
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(query);
while(rs.next()){
String firstColVal = rs.getString(1);
}
rs.next()
确保在此上下文中提取下一行,直到完成所有行。