JDBI 中的事务传播



我在数据层使用JDBI,它不使用spring。 在项目中,我调用了一个标有@Transaction的方法,该方法本身用@Transaction注释。

@Transaction
public void updateEmployee(Employee employee) {
employeeDao.update(employee);
departmentDao.updateDepartment(employee.getDepartment())
} 
@Transaction
public void updateDepartment(Department department) {
...
}

我知道 Spring 的@transaction传播是如何工作的,但在 JDBI 的情况下它是如何工作的? 默认传播级别是什么?如果需要,如何更改它?

如文档 https://jdbi.org/#_transactions 中所建议的,我们可以以编程方式管理事务。但想知道基于注释的配置中的行为。

在 JDBI 中,没有REQUIRED_NEW的概念。这两个调用将在同一事务中运行,

以下文本来自JDBI邮件组:

目前没有停放事务并自动启动单独的内部事务的概念,当然,使用两个句柄手动执行此操作非常简单。

https://groups.google.com/d/msgid/jdbi/CAHjY6CVkSN%2BJ_KpEG_T1NXf%2B%2BwwOK7GxXz72ofs%2Bf_wONmL_Rw%40mail.gmail.com。

最新更新