[color=#FF0000]-----student------public class Student implements java.io.Serializable { // Fields private Long id; private String name; private String pwd;
}
-------daoimpl中的delete()-------
public int deletes(Long[] delId) {
// TODO 自动生成方法存根
Session session = getSession();   
        Transaction tx = session.beginTransaction();   
         String hql = "delete student where id in (:IPId)";   
       Query query = session.createQuery(hql);   
       query.setParameterList("IPId",delId);   
       int dels = query.executeUpdate();   
       tx.commit();   
       return dels; 
}
---------------------------
在action中怎么传参..谢谢!

解决方案 »

  1.   

    hibernate对批处理支持的不好,一条条删除
      

  2.   

    不是吧你不会是说来个for循环吧?
      

  3.   

    struts 对表单封装成 enumeration类型。
    里面包含了checkbox ,按照你用list传参数是没有错。
    不过,你也要在action里面把所有选中的checkbox打包。
    组成一个list作为参数啊。其实,用不用批处理,都一样。
      

  4.   

    把checkbox的值切割一下放进数组里边,再传过来不就行了!
      

  5.   

    在页面 搞一个js  不就好了嘛在你提交的时候 调用 页面来一个for 把 所选中的 checkbox  的id 用 ‘,’ 分割 一下直接传过来就可以用了 省去了 中间的转换
      

  6.   

    你直接 在action里String[] ids = ServletActionContext.getRequest().getParameterValues("ids"); 客户端页面checkbox 所有的名字都是"ids" 然后你 转换下为Long[]  传给你的Dao中那个方法 
      

  7.   

    只有能for循环了,hibernate就这样