本帖最后由 JAVA_Notes 于 2012-06-12 13:28:06 编辑

解决方案 »

  1.   

    你这里只要不报异常,都提示删除成功
    判断一下,判断sessin.delete方法的返回值,返回值大于0示再给提示,不然提示删除记录为0条。
      

  2.   

    这个....
    sessin.delete是hibernate里封装好的方法,该方法没有返回值我其实就是想问为什么使用getTransaction就会报异常说删除失败
    使用beginTransaction就不报异常
      

  3.   


    Session session = HibernateSessionFactory.currentSession(); //  创建SESSION 
    Transaction tx = null      //声明事务
    try
    {
     tx = session.beginTransaction();   //开始事务 
     
     String hql = "delete Student s where s.name = 'googol' ";
     Query query = session.createQuery(hql);
     
     query.executeUpdate();
     
     tx.commit()      //一定要提交    
      tx = null;
    }catch(Exception e)
    {
     e.printStackTrace();
     if(tx !=null)
     {
      tx.rollback();         //失败则回滚 
     } 
    }
    finally
    {
     session.close();
    }
    你用这个方法删除不好吗!?既可以批量删除,也可以。
      

  4.   


    没有开启事务当然会报错了。
    使用 beginTransaction 时,删除也是成功的,只是成功的记录条数是0条,你可以将SQL语句放到PL/SQL里执行,会给你报成功,影响数据为0条。