问题标签 [transactionmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - JmsTransactionManager 具有更多的 connectionFactories
我想知道是否有人可以帮助我解决一个大问题,我正在尝试使用 Spring 2.5.6 实现更多 jmsTransactionManagers,但它不起作用。
我有 5 个连接工厂,因为我必须从 5 个不同的环境中读写。它们都在我的队列 xml bean 中,但是因为当我从一个队列中读取消息并且它们不适合选项时,我会使用事务管理器进行回滚。
所以我的问题是,如何配置更多的 JmsTransactionManagers。
c# - C# 事务管理器
嗨,我有一个生成器,它为我制作了一些由数据库结构化的自动化代码(创建所有 get、set 等),在这段代码中有一段代码如下:
我已经using System.Transactions;
手动添加了引用并在文件的开头导入,因为代码生成器从未这样做过。导入后,这删除了TransactionManager error
我得到的,但现在我收到一个错误,.GetTransaction();
从我研究的内容来看,在TransactionManager
.
有没有人知道应该用什么代替这段代码(生成器有一些代码由于错误而必须被替换,我猜这是其中一种情况......)。任何建议,将不胜感激!提前致谢!
database - 带有 TransactionTemplate 和 Connection Pool 的 JDBCTemplate,使用哪个数据源
我不太确定如何提出这个问题,所以请随时告诉我我的想法完全错误。
我想使用JdbcTemplate
和TransactionTemplate
。我首先将连接池初始化为数据源,并将事务管理器创建为数据源?
但现在我想创建我的 TransactionTemplate 和 JdbcTemplate:
现在多线程访问transactionTemplate
和jdbc
. 这段代码是否保证doInTransaction
所有的 jdbc 调用都使用相同的连接?
连接是否以某种方式在内部链接,因为看起来 JdbcTemplate 和 TransactionTemplate 可以使用他们想要的任何连接。我的代码是否正确/保存?
hibernate - 从 HibernateTransactionManager 迁移到 JpaTransactionManager
由于各种原因,我在现有应用程序中更改了 sessionFactory bean 创建:
至:
这是我新添加的持久性单元:
之后,我在许多Junit 集成测试的事务块中收到了 InvalidComponentException。例如:
异常被抛出:
catch ( InvalidComponentException e ) { fail ( "无效组件:" + e.getMessage () );
问题出在 sessionFactory.getCurrentSession ().save (c); 相反,我不得不打电话:
现在我知道 HibernateTransactionManager 的工作方式与 JpaTransactionManager 不同。但是,如果我每次都必须手动调用 session.flush(),那将是一个痛苦和性能杀手。值得注意的是,当我尝试删除一个对象时,我遇到了同样的问题。我必须合并然后删除或拆分为 2 个事务。
如何在不添加 session.flush() 的情况下配置 JpaTransactionManager 来解决这个问题?我在我新添加的 persistence.xml 中进行了尝试,但这并没有帮助。我会很感激,如果有任何帮助都会很棒。
我刚刚检查了两种变体的实际冲洗模式是什么,它是自动的。我试过打电话em.setFlushMode(FlushModeType.COMMIT)
,但冲洗模式根本没有改变,它总是自动的,((Session)em.getDelegate()).setFlushMode(FlushMode.MANUAL)
我得到了这个例外:
java - 使用多个事务管理器时没有绑定到线程的休眠会话
我创建了两个事务管理器(一个用于 READ 请求,另一个用于 READ-WRITE 请求)和两个会话工厂。
重要片段如下:
我收到以下异常:
调用DAO的方法如下:
谁能指出我做错的部分?
android - ormlite for android:设计帮助等
我开始开发android应用程序几个月了。我已经使用 Spring 框架和 Hibernate 工作了大约两年。因此,在搜索适用于 android 的 ORM 工具时,我找到了 ormlite 项目。我发现它非常有趣,我决定在我的应用程序中使用它。
一切似乎都很好,但我会向专家询问一些关于使用 ormlite 以高效和(如果可能的话)优雅的方式开发 android 应用程序的技巧!
让我们从域类开始。
所有域类都实现了一个伪 DomainObject 接口:
然后我有一个通用的 Dao 接口
实施者:
每个域对象都有自己的 Dao 接口,定义了额外的方法(以防万一需要其他方法而不是 GenericDao 中定义的方法):
和相关的实现:
所以我的问题是...
1)这种领域/道的实现是高性能的还是我引入了冗余且不必要的代码?
2)这是使用 ormlite 的好方法吗?
3)将每个 dao 的实例保存在扩展 Application 的类中是一种好习惯,还是在每个活动上保留一个 dao 的实例或保存在其他地方更好?
我也尝试过处理事务,但没有成功。我得到一个异常说表被锁定。我在 GenericDao 中创建了一个方法,返回一个新的 TransactionManager 实例:
但是当我在事务更新数据库中执行代码时,我遇到了一个异常......
谢谢您的答复!
马可
java - 事务不活动异常 - EJB 事务状态
我遇到了负责启动事务的 EJB 组件的问题。我正在使用 Jboss 5.01。
基本上我想在提交特定事务后执行给定的代码。特定代码还涉及调用一个 EJB 组件,该组件使其成为自己的事务。
为了确保在提交前一个事务后执行我的代码,我已将同步组件注册到事务组件中:
该Synchronizaton
实现基本上执行以下操作:
问题是,当我调用时,service.deleteAccounts()
我得到一个异常,最终告诉我事务不活跃。
这就是让我感到困惑的地方。如果 EJB 不活动,则带有标记为方法的 EJB@TransactionAttribute(TransactionAttributeType.REQUIRED)
将创建一个新事务(REQUIRED 是 JBOSS 中的默认值)。
那为什么我会得到“交易不活跃”?
非常感谢,
亚尼夫
spring - Spring 事务管理器是否将连接绑定到线程?
我找到了以下线程:JdbcTemplate 与 TransactionManager 究竟如何协同工作?
其中的第一句话:
据我了解,DataSourceTransactionManager 将指定 DataSource 的 JDBC 连接绑定到当前线程,允许每个 DataSource 一个线程绑定连接。如果它是一个连接池,它将占用一个可用连接。
...正是我想知道的。
使用事务管理器时,您是否最终每个线程都有自己的单个连接?另外,这种连接能持续多久?同一个线程是否在单个请求中使用相同的连接,还是有其他事情发生?我只是想了解当您拥有事务管理器和没有事务管理器时 Spring 到底在做什么(不管您是否真的有事务)。
mongodb - 在 grails 中如何让 transactionManager 是 mongoTransactionManager?
我使用 grails 2.0.1,卸载插件休眠,安装插件 mongodb。现在没有名为 transactionManager 的 bean,并且有一个 mongoTransactionManager。所以我的问题是如何在我的 resources.groovy 中定义 transactionManager?非常感谢。
java - Spring TransactionManager - 提交不起作用
我正在尝试创建基于 Spring 的解决方案,用于在 MySQL 5.5 服务器上运行批量 SQL 查询。“查询”是指任何可以编译的 SQL 语句,因此 SQL 批处理作业可以包含例如几个 CREATE TABLE、DELETE 和 INSERT 语句。
为此,我正在使用Spring Batch 。
我已经transactionManager
配置如下。
和dataSource
:
我的 DAO 类的方法配置为
我循环遍历一组 SQL 语句,一次使用单个 SQL 语句调用该方法。方法内部的处理很简单:
我希望当 DAO 方法完成时,我会在数据库中看到结果。但是,似乎只有当 Spring 作业执行完成时,结果才会在数据库中可用。
我试图在我的 DAO 方法中进行提交:
我调试了 Spring 代码,看到我从 DAO 方法调用的提交是由 TransactionTemplate 执行的(流程到达行this.transactionManager.commit(status);
并无异常通过)
我将不胜感激任何建议,以使 DAO 方法在每次调用时都提交(在它执行的每个 SQL 语句之后提交)。