`
darrenzhu
  • 浏览: 804115 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java 方法(JdbcTransactionTemplate)与存储过程共享同一个事务

阅读更多
如果要让java来管理事务,那么在存储过程里不能写提交(commit work)和回滚(rollback)的代码,否则,存储过程会在一个单独的事务里提交。

Spring的TransactionTemplate和Sybase存储过程共享同一事务要点:
1)确保存储过程里不能写提交(commit work)和回滚(rollback)的代码
2)确保存储过程的事务模式是chained
--change transaction mode to chained since application is forced to use chained transaction mode due to support transaction
--check all stored procedures' transaction mode
sp_procxmode

--change specified stored procedure's transaction mode
sp_procxmode mystoreProcedureXXX, 'chained'

3)在java方法里要用spring的类来调用存储过程
new SimpleJdbcCall(getJdbcTemplate()).withProcedureName("procedureName").execute(inParamMap);




分享到:
评论

相关推荐

    Java调用存储过程--传入集合参数

    在这个场景中,我们将从Java应用程序收集一系列用户数据,将其转换为Oracle数组,然后调用一个预定义的存储过程进行批量更新操作。 #### 五、注意事项与优化建议 - **类型匹配**:确保Java对象属性与数据库对象...

    java调用oracle存储过程或者函数

    如果需要调用多个存储过程或函数,可以使用`CallableStatement.addBatch()`方法将多个调用语句添加到批处理队列,然后用`CallableStatement.executeBatch()`一次性执行,提高效率。 六、性能优化 1. 使用连接池:...

    Java调用数据库存储过程[mysql测试通过]

    本篇文章将深入探讨如何使用Java与MySQL数据库进行交互,实现调用存储过程,并提供一个测试通过的实例。 首先,理解存储过程是数据库管理系统提供的一种预编译的SQL语句集合,它封装了特定的功能,可以提高执行效率...

    java 调存储过程

    在Java编程中,调用数据库存储过程是一种常见的操作,特别是在处理复杂的业务逻辑或者批量数据操作时。存储过程是由一组SQL语句组成的预编译代码,它们存储在数据库中,可以被多次调用,提高效率并简化代码管理。...

    java调用sqlserver存储过程.pdf

    在本例中,创建了一个名为 `InsertUser` 的存储过程,该存储过程用于向 `BookUser` 表中插入新用户信息。 2. 存储过程的参数 存储过程可以接收多个参数,这些参数可以是输入参数、输出参数或输入/输出参数。在本例...

    DB2Java存储过程.pdf

    通过以上内容可以看出,《DB2 Java 存储过程》这本书全面地覆盖了 Java 与 DB2 结合的各个方面,包括 Java 在不同平台上的应用、数据库连接技术以及存储过程的具体实现等。这对于希望深入了解 DB2 Java 存储过程开发...

    JAVA&C#调用存储过程代码

    以一个简单的例子展示Java调用存储过程: ```java import java.sql.*; public class CallProcedure { public static void main(String[] args) { try { Connection conn = DriverManager.getConnection("jdbc:...

    java中调用sql存储过程详细例子

    例如,如果我们有一个名为`getTestData`的存储过程,接受两个参数,但不返回结果,可以这样创建`CallableStatement`: ```java CallableStatement cstmt = con.prepareCall("{call getTestData(?, ?)}"); ``` 2...

    使用Java编写Oracle存储过程.pdf

    示例代码中展示了如何使用Java来创建一个添加记录的存储过程,该过程名为addUser,接受用户名和电子邮件作为参数,并执行SQL插入操作。代码中创建了与Oracle数据库的连接,并构造了一个动态的SQL语句来向数据库中...

    java调用存储过程实例

    在IT领域,特别是数据库操作与Java编程的交集部分,调用存储过程是常见的需求之一。根据提供的文件信息,我们可以深入解析如何在Java中通过JDBC(Java Database Connectivity)调用Oracle数据库的存储过程。 ### ...

    JAVA存储过程详解

    ### JAVA存储过程详解 在Java开发中,存储过程是一种预编译并存储在数据库中的SQL脚本或程序,它可以接收参数、执行复杂的逻辑,并返回结果。利用Java来调用存储过程,可以极大地提高应用程序的性能和安全性。下面...

    java 调用存储过程 实例

    在Java编程中,调用数据库的存储过程是常见的任务,特别是在处理复杂的业务逻辑或数据操作时。本实例将深入探讨如何使用Java来调用Oracle数据库中的存储过程。 首先,我们需要了解存储过程的基本概念。存储过程是预...

    java分布式事务demo

    Java分布式事务是大型分布式系统中不可或缺的一个重要组成部分,它确保在多个网络节点间的数据操作能够保持一致性和完整性。在分布式环境中,由于多个服务之间可能存在数据交互,因此需要一种机制来处理跨服务的数据...

    调用存储过程(java)

    存储过程在Java编程中扮演着重要的角色,允许开发者通过Java应用程序与数据库进行高效且安全的数据交互。下面将详细介绍在Java中如何调用存储过程,并探讨其相关的知识点。 1. **存储过程的概念**: 存储过程是一...

    java调用存储过程同时返回值和多个table

    java调用存储过程,支持获取return值,output返回值,以及查询的表数据,表数据允许有多个查询结果集

    java调用存储过程源码 sql数据库

    例如,你可以创建一个存储过程来处理事务,确保一组操作要么全部成功,要么全部失败。另外,存储过程可以包含数据库特定的功能,比如MySQL的用户定义函数(UDF)或Oracle的PL/SQL块。 为了优化性能,考虑以下几点:...

    java中调用存储过程

    标题“Java中调用存储过程”指向了Java编程语言与数据库交互的一个关键领域——存储过程的调用。存储过程是一种预编译的SQL代码块,存储在数据库中,可以接受输入参数、执行复杂的数据库操作并返回结果。在Java中,...

    java事务 - threadlocal

    当Java事务与ThreadLocal结合使用时,可以在不同的线程中维护各自的事务状态,比如在Spring框架中,每个线程的ThreadLocal可以存储一个TransactionStatus对象,这样就可以在线程内部管理当前事务的状态,而不会影响...

    Java中如何调用存储过程的代码

    以下是一个详细的步骤,展示了如何在Java中调用存储过程。 首先,确保你已经安装了JDBC驱动程序,它是Java与数据库通信的桥梁。例如,如果你使用的是Oracle数据库,你需要下载并添加ojdbc驱动到项目的类路径中。 1...

Global site tag (gtag.js) - Google Analytics