kha*_*cem 2 java jdbc resultset prepared-statement
在我的情况下,我PreparedStatement用来从我的数据库中选择记录:选择的行数是正确的,但只显示最后一行.
我的代码:
while (rs.next()) {
DetailCaisse detailCaisse = new DetailCaisse();
devise.setLibSiglDev(rs.getString("LIB_DEV_DEV"));
devise.setLibSiglDev(rs.getString("LIB_SIGL_DEV"));
devise.setCodDevDev(rs.getInt("cod_Dev_dev"));
detailCaisse.setDevise(devise);
deviseDispo.add(detailCaisse);
}
Run Code Online (Sandbox Code Playgroud)
我应该使用什么而不是while(rs.next())纠正问题?
你的使用没有任何问题while(rs.next()).问题是你devise用新值覆盖同一个实例,从而丢失了旧值.相反,您应该在每次迭代时创建一个新实例:
while (rs.next()) {
DetailCaisse detailCaisse = new DetailCaisse();
Devise devise = new Devise(); // Here!
devise.setLibSiglDev(rs.getString("LIB_DEV_DEV"));
devise.setLibSiglDev(rs.getString("LIB_SIGL_DEV"));
devise.setCodDevDev(rs.getInt("cod_Dev_dev"));
detailCaisse.setDevise(devise);
deviseDispo.add(detailCaisse);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
671 次 |
| 最近记录: |