commit放在循环外面了~~~~最后answer对象里放的肯定是最后一个值么~~~
new 语句放在循环里面会没循环一次就产生一个新的answer对象,调试一下,一步一步的就看清楚了
new 语句放在循环里面会没循环一次就产生一个新的answer对象,调试一下,一步一步的就看清楚了
解决方案 »
- Date dd = new Date(); 得不到当前时间
- java jsp 如何让页面提交,页面刷新后,下拉框中的值不变?
- 往数据库中插入数据时插入一部分就报 Too many variables.错误 急救答案
- struts2第一次上传失败,之后再上传永远失败
- javaBean判空
- 关于POI写出的EXCEL的问题----超难!
- hibernate中的query查询和criteria查询的效率那个高呢,一般用谁呢?
- 在线等,weblogic无法deploy,ejb.jar
- myeclipse 如何连接数据库mysql-front
- 建议CSDN建一个Struts和hibernate的版块!!!
- Hibernate递归中事务问题
- J2EE学习
coder000() ( ) 信誉:100我的commit是放在最后一起提交的,因为每一次for都更新的话那可不行啦.
按我理解,应该是二种情况结果一样才对,所以我对于这样的结果很迷惑....希望大家帮忙一下!
ljw714() ( ) 信誉:100 谢谢你的回答.
我用的是hibernate3,以前我是用hibernate2的,没碰到过这种情况.
你说的hibernate3有更简单的更新方式,可以举个例子吗?非常感谢......
他一直在new啊。。他循环一次就new了一次。。又回到了初使。
那应该和new位置无关阿...
ljw714() ( ) 信誉:100
我循环时,不单单update该对象,还要进行其它的操作阿,比如修改相应的其它表阿...
//Answer answer =new Answer(); //for循环内new
Answer answer=(Answer) session.load(Answer.class,new Long(answerids[i]));session.evict(answer); <--------- evict!!!!answer.setStatus("答案");
session.update(answer);
then I dont think you will have any problem