oracle自动提交没有生效,JBoss对Oracle的自动提交始终不起作用

我有一个非常有趣的情况。我对JBoss和Oracle稍有新意,主要与DB2上的Weblogic一起工作。这就是说,我想要做的事很简单。

我有一个local-tx-datasource到Oracle数据库。从我的Java I代码中,我使用适当的JNDI名称检索数据源后调用datasource.getConnection()。 my -ds.xml文件中的local-tx-datasource声明没有任何显式引用自动提交行为。

获得连接后,我执行创建/更新查询,并返回正确的更新计数。随后,在短时间内,我甚至可以检索到这个记录。然而,在此之后,数据库假装它从来没有得到记录,并且什么也没有。

我对连接的经验表明,当连接没有提交它的工作时会发生这种情况,所以只有这个连接本身才能看到它的事务中的数据。从我读的内容来看,JBoss也遵循Connection返回的规范是自动提交的规范。我甚至从我的Java代码中验证了这一点,并指出自动提交行为已设置为true。但是,如果是这样的话,为什么我的记录没有被创建/更新?

在此之后,我将Connection的自动提交行为设置为false(再次来自Java代码),然后明确进行提交。从那时起,就没有问题了。

什么可能会出错?这里我对自动提交的理解是不正确的,还是对JBoss有其他解释?请注意,我没有任何交易。这些是非常简单的单个记录插入查询。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值