当前位置: 首页 > 知识库问答 >
问题:

单例会话bean生命周期回调方法中的事务属性

麻桐
2023-03-14

为什么在带有容器管理事务的单例会话bean中,用@PostConstruct或@PreDestroy注释的方法只能具有以下事务属性之一:

•要求

•REQUIRES_NEW

•NOT_SUPPORTED

共有1个答案

柴增
2023-03-14

我猜是因为注释的方法是容器在bean创建或销毁过程中调用的方法,所以将这些方法作为强制事务的一部分是没有意义的(因为在@PostConstruct<之前没有调用业务方法)/code>)。同样适用于SUPPORT类型。

您可以使该方法本身具有事务性(因此该方法成为原子),但它不能加入其他事务,因为它由容器调用,并且您无法控制它。

 类似资料:
  • 问题内容: 在Spring下如何适当地完成Hibernate会话的“生命周期”? 该由Spring自动创建并从Glassfish的连接池利用其数据库连接。目前,我正在通过进行Hibernate会话。然后,我开始交易,完成工作,然后或结束。我需要做任何其他操作,如,,在任何时间或任何其他人,以便连接将被适当地返回到游泳池或就是一切已经自动春天呢? 有了很多这样的方法,这让我眼前一亮,无法理解应该何时

  • 当使用JPA的Hibernate实现并使用Spring数据源管理这些资源时,EntityManager会话何时关闭?例如,下面的基本模式让Spring服务层调用Spring DAO层(@repository)。DAO存储库自动调用PersistentContext的EntityManager并执行DB操作。我的问题是,在getData服务方法完成之后,EntityManager会话何时关闭?我之所

  • Cocos Creator 为组件脚本提供了生命周期的回调函数。用户只要定义特定的回调函数,Creator 就会在特定的时期自动执行相关脚本,用户不需要手工调用它们。 目前提供给用户的生命周期回调函数主要有: onLoad start update lateUpdate onDestroy onEnable onDisable onLoad 组件脚本的初始化阶段,我们提供了 onLoad 回调函数

  • # 生命周期回调 Cocos Creator 3D为组件脚本提供了生命周期的回调函数。用户只要定义特定的回调函数,Creator 3D就会在特定的时期自动执行相关脚本,用户不需要手工调用它们。 目前提供给用户的生命周期回调函数主要有: onLoad start update lateUpdate onDestroy onEnable onDisable onLoad 组件脚本的初始化阶段,我们提

  • 片段B 奥纳塔奇 OnCreate 停止-片段不可见。宿主活动已停止,或者片段已从活动中移除,但已添加到后堆栈中。停止的片段仍处于活动状态(系统保留所有状态和成员信息)。但是,它对用户不再可见,如果活动被杀死,它将被杀死。 这是否意味着当在同一活动中添加新片段时,不调用当前片段的方法? 然后在片段B中使用 我所期待的是? 片断A的onStart方法被调用,因为片断A现在可见 案例2 片段A 停顿

  • 方法的标注和函数类似: struct Owner(i32); impl Owner { // 标注生命周期,就像独立的函数一样。 fn add_one<'a>(&'a mut self) { self.0 += 1; } fn print<'a>(&'a self) { println!("`print`: {}", self.0); } } fn