spring-transactions相关内容
在Spring中,由于AOP代理的原因,您不能简单地从同一实例调用@Transactional方法。创建一个自注入并从自代理实例调用该方法是不是一个好主意?您认为有什么缺点吗? 推荐答案 完全没问题。 此外,还有使用@Autowired注释支持该特性的Jira ticket。在Spring 4.3+版本中已修复。但是,对于基于XML的配置或使用@Resource注释,它在早期版本中有效
..
有没有可能将声明性TX管理(通过@Transaction)与@KafkaListener注释方法一起使用? 例如,我想使用它来为每个监听器定义单独的发送超时。 我的设置如下: TransactionManager: @Bean @ConditionalOnBean(value = {HibernateTransactionManager.class}) public ChainedKa
..
我正在使用SpringBatch 2.1.7版本的核心和基础结构JAR读取CSV文件并将其保存到数据库。 将我的代码与Spring Quartz调度程序集成以每分钟运行一次,批处理的读写工作正常,但失败,错误为“org.springframework.dao.OptimisticLockingFailureException:尝试用错误的版本(2)更新步骤执行id=1,其中当前版本为1”
..
当我尝试获取惰性初始化实体时,我在 IDE 中看到以下异常消息(我找不到它在代理实体中的存储位置,因此我无法提供此异常的整个堆栈跟踪): 方法抛出 'org.hibernate.LazyInitializationException' 异常.无法评估 com.epam.spring.core.domain.UserAccount_$$_jvste6b_4.toString() 这是我在尝试访问
..
我的 spring (4.1.1) 应用程序部署在 JBoss-6.10-final 实例上,因此它使用基于容器的事务管理器和数据源.对于消息传递,我使用 TIBCO EMS 8.1 和 XA 队列连接工厂设置.Java 版本为 1.8.0_20.所有这些都在我的 Ubuntu 14.04 笔记本电脑上运行. 我需要通过 JMS 发送请求,然后等待回复.我正在调用的 bean 将事务传播设置
..
我们在 Spring config 中将 Spring 事务配置为: 我认为这意味着 Spring 将自动发现底层 JTA 实现.因此,当我们启动 JBoss 时,我们会在 Spring 搜索时看到这些消息: [JtaTransactionManager] [ ] 在回退 JNDI 位置找不到 JTA TransactionManager [java:comp/Tran操作管理器]java
..
来自弹簧参考文档 Spring 建议您只使用 @Transactional 注释来注释具体类(和具体类的方法),而不是注释接口.您当然可以将 @Transactional 注释放在接口(或接口方法)上,但是如果您使用基于接口的代理,这只能像您期望的那样工作.Java 的事实注释不是从接口继承的意味着如果您使用基于类的代理 (proxy-target-class="true") 或基于编织的方
..
我仍在努力了解@Transactional 的工作原理. 我在 Service 类的方法上有 @Transactional 注释,在 Repository 类中的方法上有 @Modifying 注释.带有@Transactional注解的方法是否适用于带有@Modifying注解的Repository中的方法? 我的理解: @Transactional 使用 @Transacti
..
在一个 dao 中,我有 2 个 @Transactional 方法. 如果我没有提供任何明确的属性, 那么会发生什么,如果 我在另一个方法体中运行一个方法? 两种方法都将在同一个事务中运行? 解决方案 Spring AOP 中的代理 在使用 Transactional 时,您正在处理类的代理,因此在这种情况下: @Transactionalpublic v
..
我在 Service 类中看到一个方法被标记为 @Transactional,但它也在调用同一类中的一些其他方法,这些方法没有被标记为 @Transactional. 这是否意味着对单独方法的调用导致应用程序打开与 DB 的单独连接或暂停父事务等? 一个没有任何注释的方法被另一个带有 @Transactional 注释的方法调用的默认行为是什么? 解决方案 当您在事务块内调用没
..
我正在尝试配置 JSF+Spring+hibernate,我正在准备运行测试,但是当我在 application-context.xml 文件上使用这个“tx:annotation-driven"时,我收到了这个错误: 匹配的通配符是严格的,但找不到元素'tx:annotation-driven'的声明 这是我的 application-context.xml:
..
我正在使用 Spring Data 和 @Transactional 注释(用于测试后的自动回滚).我在帐户和用户(拥有方)之间有简单的双向关系: @Entity@Table(name = "ACCOUNT_T")公共类 AccountEntity {@ID@GeneratedValue(策略 = GenerationType.IDENTITY)私人长ID;私人字符串电子邮件;私人字符串密码;私
..
所以我有如下内容: 公共接口 MyService {@PreAuthorize("hasPermission(T(Name).OBJ, T(Action).GET)")MyObj getObj(String id);} @Service公共类 MyServiceImpl 实现 MyService {@覆盖@交易公共 MyObj getObj(字符串 ID){返回 dao.get(id);}}
..
关于 Spring JPA 存储库事务性的 1 个快速问题.我有一个未标记为事务性的服务并调用 Spring JPA 存储库方法 userRegistrationRepository.deleteByEmail(email); 定义为 @Repository公共接口 UserRegistrationRepository 扩展 JpaRepository{用户注册 findByEmail(St
..
我使用 Spring + Hibernate + JPA 我需要通过插入他们的订单来处理客户列表. 这是工作单元: for(Customer customer: CustomerList) {列表orderList = customer.getOrders();for(订单顺序:OrderList){//1.将订单插入 ORDER 表//如果插入因重复键而失败,则不回滚,我按
..
我正在使用 Spring/Spring-data-JPA,发现自己需要在单元测试中手动强制提交.我的用例是我正在做一个多线程测试,其中我必须使用在线程产生之前持久化的数据. 不幸的是,鉴于测试在 @Transactional 事务中运行,即使是 flush 也无法使其被生成的线程访问. @Transactionalpublic void testAddAttachment() 抛出异常{
..
案例 1 @Transactional公共类 UserServiceImpl 实现 UserService {………………公共无效方法1(){尝试{方法2();}catch(异常e){}}公共无效方法2(){}} 案例2 公共类 UserServiceImpl 实现 UserService {………………公共无效方法1(){尝试{方法2();}catch(异常e){}}@交易公共无效方法2
..
我有一个使用 Hibernate 4 和 Spring Transactions 的 Spring 3.2 应用程序.所有方法都运行良好,我可以正确访问数据库以保存或检索实体.然后,我引入了一些多线程,由于每个线程都在访问 db,我从 Hibernate 中收到以下错误: org.hibernate.HibernateException:非法尝试将一个集合与两个打开的会话相关联 我从网上读到我
..
我是 Spring 的新手,想知道是否可以在同一个应用程序中使用多个事务管理器? 我有两个数据访问层 - 一个用于两个数据库.我想知道,你如何为一层使用一个事务管理器,为另一层使用不同的事务管理器.我不需要跨两个数据库执行事务 - 还没有.但我确实需要单独对每个数据库执行事务.我创建了一个图像来帮助概述我的问题: 这是我的应用程序上下文配置:
..
我们有一个微服务架构,使用 Kafka 作为服务之间的通信机制.一些服务有自己的数据库.假设用户调用服务 A,这将导致在该服务的数据库中创建一条记录(或一组记录).此外,此事件应作为 Kafka 主题上的一个项目报告给其他服务.确保仅在 Kafka 主题成功更新后才写入数据库记录的最佳方法是什么(本质上是围绕数据库更新和 Kafka 更新创建分布式事务)? 我们正在考虑使用 spring-k
..