HibernateTransactionContext context = HibernateContextManager.getTransactionContext(null); 
context.rollback()  ; 
return mappings.find();  返回操作失败的路径 ;finally
{
context.realease();  
}

解决方案 »

  1.   

    一般在logic层调用数据库的地方抛出异常,判断dao的操作是否有异常存在时,就先判断insert操作的返回值是否是0;(成功是1),然后在其他高层处理异常信息,将处理好的异常信息传递给JSP,直接在JSP上的处理使表示层过于依赖业务。
    int resCount = dao.insertInto(...);
    if (resCount == 0) {
    throw new InsertException();
    }