我是第一次进来这里面,大家好!
我呢?还是刚刚接触到java不久,在这里想请问大家帮忙解决一下这个问题:我在往list对象中添加查询出来的数据时,发现一个奇怪的问题,就是每添加新的一条记录时,则全部的数据就会变成最后新添加的那条记录数据,真搞不懂这是怎么回事?希望大家能够帮帮我,在此先谢了
------解决方案--------------------------------------------------------
很有可能是你把List的声明写在循环体里了。像这样:
List list = null;
while(...){
list = new ArrayList();
...
list.add(obj);
...
}
list = new ArrayList();这句应该放在外面。
贴代码看看。
------解决方案--------------------------------------------------------
lz试一试下面的代码
- Java code
while(rs.next()){ [color=#FF0000]bean = new DeptInf();[/color] bean.setDepartmentid(rs.getString("dpid")); bean.setDepartmentname(rs.getString("dpnm")); bean.setSuperdepartmentid(rs.getString("supid")); list.add(bean); }
------解决方案--------------------------------------------------------
把你的bean new到循环里边去 你这样永远是一个对象
像这样
while(rs.next()){
bean = new DeptInf();
bean.setDepartmentid(rs.getString("dpid"));
bean.setDepartmentname(rs.getString("dpnm"));
bean.setSuperdepartmentid(rs.getString("supid"));
list.add(bean);
}