RT ,在操作数据库的时候,需要用到异步隔离处理,一个删除,另一个判断是否存在,所以需要知道delete的结果是否成功,请大侠们不吝赐教

解决方案 »

  1.   

    用try.....catch你的删除语句 
    如果不报异常 就说明成功 
    如果报异常 就说明失败
      

  2.   

    delete 语句会有一个boolean返回值   0或者1  表示失败和成功
      

  3.   

    HIBERNATE有个executeUpdate()方法,是返回INT值的,那个就是代表通过这个执行,操作了几条数据,这个。是不是LZ想要的?
      

  4.   

    hibernate存在缓存策略,即使用户从数据库中删除了一条数据,这条数据对象很有可能还存在于缓存当中,当用户在执行查询的时候,hibernate从缓存中查到了已经删除的那条数据,造成数据依然存在的假象,所以在查询之前,最好先清除一下缓存。
      

  5.   

    他这个是返回更新的记录数 delete方法只有在事务提交的时候才会执行 事务提交便会清理缓存 再查就查不到了
    你可以通过get方法判断下 
    发觉LZ有一个错误的想法就是 没有判断对象是否被删除的方法 你只能通过查询来查找该对象是否存在 即使说根据更新返回的更新记录数也不行
      

  6.   

    事务执行成功说明已经删除...报异常或其他原因事务执行不成功说明没有删除.用try  catch一下
      

  7.   

    try{
        //执行删除语句
        return true;
    }catch(RunTimeException e){
        return false;
    }
      

  8.   

    异常抛掉直接
    return true;  有异常  不会执行到return  true