【问题标题】:spring transactional nested open session?春季事务嵌套开放会话?
【发布时间】:2015-01-26 08:21:18
【问题描述】:

如果一个服务方法被标记为@Transactional并嵌套传播,并且在其中有很多对其他@Transactional方法的调用,那么这些方法中的每一个都会使用自己的会话吗?它应该代表许多与 db 的连接,只需要一个方法调用 no?

【问题讨论】:

    标签: spring hibernate annotations transactional hibernate-session


    【解决方案1】:

    看起来PROPAGATION_REQUIRED 是您的最佳选择。从它的javadoc:

    支持当前事务;如果不存在则创建一个新的

    Refer this link for more details

    【讨论】:

    • 对不起,也许我不清楚,但这只是好奇,我总是使用 Spring 的默认传播,所以我总是只有事务(外部)。但是q
    • 是的,因此使用传播,您可以对事务进行多次递归调用,您无需担心:)
    • 是的,但我的问题是关于会话的,这个递归调用获取会话呢?这意味着调用一种方法可以使用 N 个与 db 的连接?
    • 一次只能连接一个
    • 某处有解释?我找不到它:S
    猜你喜欢
    • 2013-08-12
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-29
    相关资源
    最近更新 更多