`
kyvin
  • 浏览: 32737 次
  • 性别: Icon_minigender_1
  • 来自: 福州
文章分类
社区版块
存档分类
最新评论

求助 为什么我的事务总是回滚

 
阅读更多
这是我把我所上传的文件插入到数据库中oracle,虽然action总提示说成功了,可是当我跳到我的接口实现类中时 才发现 每到  session.flush();都事物就回滚
搞不明白原因 希望高手能 谢谢了
try {
Session session = this.getSessionFactory().openSession();
Transaction tx = null;
byte[] buffer = new byte[1];
buffer[0] = 1;
try {
tx = session.beginTransaction();
Blob blob = file.getFileData();
file.setFileData(Hibernate.createBlob(buffer));
session.save(file);
session.flush();
session.refresh(file, LockMode.UPGRADE);
BLOB blobTemp = (BLOB) file.getFileData();
OutputStream out = blobTemp.getBinaryOutputStream();
InputStream in = blob.getBinaryStream();
byte[] data = new byte[(int) in.available()];
in.read(data);
out.write(data);
out.flush();
in.close();
out.close();
session.flush();
tx.commit();
} catch (Exception he) {
if (tx != null)
tx.rollback();
} finally {
session.close();
}
} catch (HibernateException he) {
}
分享到:
评论

相关推荐

    SQL Server2000数据库文件的恢复.pdf

    需要连续的事务日志备份,通过回滚未提交的事务并重播已提交的事务来恢复到特定时刻。 在恢复过程中,SQL Server 2000提供了几种内置的恢复模式,包括简单恢复模式、完整恢复模式和大容量日志恢复模式。每种模式都...

    数据库恢复软件

    它会记录每一行的删除操作,并且如果开启了事务,这些操作可以在事务日志中回滚,这使得数据有可能通过备份和日志还原来恢复。当使用数据库恢复软件时,它可以通过分析事务日志,找出被`DELETE`操作移除的行,并尝试...

    struts2+spring+hibernate

    这样,当方法执行过程中发生异常时,Spring会自动回滚事务,确保数据一致性。事务管理是企业级应用中的关键部分,Spring提供了一种声明式的方式,让开发者专注于业务逻辑,无需过多关注底层事务控制。 **切面编程**...

    testDB.zip

    3. **死锁处理**:死锁是多线程并发操作中的一种常见现象,MySQL通过检测并回滚死锁中的事务来解决这个问题。不过,开发者应尽量避免编写可能导致死锁的代码,例如避免循环等待资源的情况。 4. **预编译与批处理**...

    SQL数据库检测修复工具

    2. **日志分析**:修复工具能够检查事务日志文件,找出未完成的事务,这对于回滚不完整操作至关重要。 3. **数据恢复**:在识别出损坏部分后,工具会尝试恢复可读数据,尽可能减少数据丢失。 4. **备份与还原**:...

    jmdb2简要介绍

    - **事务支持**:JMDB2提供了基本的事务控制机制,支持提交和回滚操作。然而,它仅支持单线程事务,这意味着在多线程环境下可能需要额外的锁或同步机制来保证数据一致性。 #### 六、注意事项 1. **内存管理**:未...

    Mysql错误代码大全 中文

    - **事务错误**(如`1213`):在事务处理中出现死锁,需要回滚事务或手动解决冲突。 3. **错误处理策略** - **查阅官方文档**:MySQL的官方文档详尽地列出了所有可能的错误代码及其含义,是排错的重要资源。 - *...

    ORACLE SYSTEM表空间已满解决方案.docx

    3. **回退段**:用于事务处理过程中保存撤销信息,以便于在事务失败时可以回滚到之前的状态。 4. **临时段和自举段**:这些是在某些特定情况下使用的特殊类型的段。 5. **所有用户数据库实体**:包括用户创建的所有...

    oracle报错

    7. **故障排除**:尝试重启服务、回滚事务、修改配置等操作。 8. **社区求助**:如ITEYE博客所示,向社区提问并提供详细信息,可以获得其他开发人员和专家的帮助。 综上所述,解决Oracle报错问题通常涉及对数据库...

    better sql-开源

    6. **事务管理**:对于需要保证数据一致性的操作,"Better SQL"可能会提供事务支持,确保一组操作要么全部成功,要么全部回滚。 7. **扩展性**:作为一个开源项目,"Better SQL"很可能会设计成模块化,允许用户根据...

Global site tag (gtag.js) - Google Analytics