gpt4 book ai didi

java - JBoss 数据库连接池自动提交行为

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:40:40 26 4
gpt4 key购买 nike

我们使用 JBoss 4 和 Oracle 以及通过 JBoss 数据源 XML 文件配置的 JNDI 数据源。

最近意识到默认情况下从数据源获取的所有连接都将自动提交属性设置为 true。但是,我们依赖 Oracle 存储过程并希望在存储过程中控制提交。

我们使用纯 JDBC 调用以及 Spring StoredProcedure 包装器从 JBoss 调用存储过程。尝试从 JBoss 数据源 XML 设置自动提交并没有真正起作用。

我只能看到,对于从数据源获得的每个连接,我们都可以将自动提交属性设置为 false,但是有人知道我们如何在一个地方配置它吗?

编辑:我正在添加我们使用的数据源配置:

<local-tx-datasource>
<jndi-name>some name</jndi-name>
<connection-url>jdbc:oracle:thin:@(description=(address_list=(address=(protocol=tcp)(port=1521)(host=xxx))(address=(protocol=tcp)(port=1521)(host=xxx)))(load_balance = yes)(connect_data=(SERVICE_NAME=xxx)(SERVER=DEDICATED)))</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>xxxr</user-name>
<password>xxx</password>
<!-- Checks the Oracle error codes and messages for fatal errors -->
<exception-sorter-class-name>
org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter
</exception-sorter-class-name>
<min-pool-size>5</min-pool-size>
<max-pool-size>25</max-pool-size>
<!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml -->
<metadata>
<type-mapping>Oracle10g</type-mapping>
</metadata>
</local-tx-datasource>

我们也使用了 ,但没有改变...

最佳答案

数据源主要分为三种类型:

JBoss Community ConfigDataSources

您的 deploy/oracle-ds.xml 文件应该使用 来获取自动提交设置为 false 的连接。

请参阅 Scott Stark 在这篇文章中的回复:How to Declaratively set autoCommit to falseJ2EETM Connector Architecture Specification Version 1.5原始来源第 15.5.3.1 节。

关于java - JBoss 数据库连接池自动提交行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3429417/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com