最近我学习SSH在做一个人力资源系统时,实现删除功能时老是出现系统崩溃,就是点击其他action都是无尽等待了...
具体代码如下:Action里的删除方法,用的是一个循环来批量删除,docids是一个数组,用来存储要删除的docid.
public String deleteDoc(){
int len = docids.length;
for(int i=0;i<len;i++){
document = docService.getDocumet(docids[i]);
docService.deleteDocument(document);
}
return SUCCESS;
}jsp里红色字体部分就是用来提交docid:
<s:iterator value="documents" >
<tr>
<td class="td_bg"><s:property value="docid"/></td>
<td class="td_bg"><s:property value="docname"/></td>
<td class="td_bg"><s:property value="employeeid"/></td>
<td class="td_bg"><s:property value="note"/></td>
<td class="td_bg"><a href="<s:url action='Detaildoc.action'><s:param name='document.docid' value='docid'/></s:url>">查看</a></td>
<td class="td_bg"><a href="<s:url action='Editdoc.action'><s:param name='document.docid' value='docid'/></s:url>">修改</a></td>
<td class="td_bg"><input name="docids" type="checkbox" value="<s:property value="docid"/>" align="middle"></td>
</tr>
</s:iterator>执行删除的action后,我是用一个重定向action的result再获取列表然后在页面显示的.另外docservice里的deleteDocument方法就是简单用DAO的DELETE方法删除实例.然后我执行删除时,第一次执行没问题 但是如果执行第二次后 也能删除成功,,但是系统就是出现不能执行其他action了,点击其功能action都没反应
具体代码如下:Action里的删除方法,用的是一个循环来批量删除,docids是一个数组,用来存储要删除的docid.
public String deleteDoc(){
int len = docids.length;
for(int i=0;i<len;i++){
document = docService.getDocumet(docids[i]);
docService.deleteDocument(document);
}
return SUCCESS;
}jsp里红色字体部分就是用来提交docid:
<s:iterator value="documents" >
<tr>
<td class="td_bg"><s:property value="docid"/></td>
<td class="td_bg"><s:property value="docname"/></td>
<td class="td_bg"><s:property value="employeeid"/></td>
<td class="td_bg"><s:property value="note"/></td>
<td class="td_bg"><a href="<s:url action='Detaildoc.action'><s:param name='document.docid' value='docid'/></s:url>">查看</a></td>
<td class="td_bg"><a href="<s:url action='Editdoc.action'><s:param name='document.docid' value='docid'/></s:url>">修改</a></td>
<td class="td_bg"><input name="docids" type="checkbox" value="<s:property value="docid"/>" align="middle"></td>
</tr>
</s:iterator>执行删除的action后,我是用一个重定向action的result再获取列表然后在页面显示的.另外docservice里的deleteDocument方法就是简单用DAO的DELETE方法删除实例.然后我执行删除时,第一次执行没问题 但是如果执行第二次后 也能删除成功,,但是系统就是出现不能执行其他action了,点击其功能action都没反应
解决方案 »
- 一个关于velocity,*.vm页面显示的问题,求高手,在线等。。。。
- 关于hibernateCallBack()
- cxf2.0.10发布的问题.weblogic(100分)
- javaEE面试题
- 各位大哥!请帮小妹一个忙啊!关于struts的问题
- struts2 @action报错404
- 请问EJB的一些问题
- ==========如何采用JMS/MDB设计工作流引擎=========(第二贴)
- 有关HashTable的问题,立即结贴!!
- rabbitmq 手动取消消费者注册报错:java.io.IOException: Unknown consumerTag
- Hibernate的学习之道与基础教程!
- hibernate+struts+spring内在联系
在一个事务里对一张表进行查询和删除或者修改就会出现这样的情况
报的错一般是超时
解决的方法是:如果用了hibernate的话,那就用hibernate的方法而不是jdbc的方法 问题能解决
如果是jdbc操作 那就别把这二个方法放在同一个service中就OK了
for(int i=0;i<len;i++){
document = docService.getDocumet(docids[i]);
if(document!=null){
docService.deleteDocument(document);
}
}这样试试
我没有用JDBC,所以不是你说的那个问题..还是谢谢了, 问题已经解决了, 就是没有关闭session