@Transactional内的无状态会话



我目前在无状态会话中执行事务时遇到问题。

在服务层上,我使用@Transactional注释定义了事务(这是必需的,因为方法需要在一个事务中(。 在方法中,我创建新的实体Car。 但是,我还必须在无状态会话中创建底层方法自定义转交(这样做是为了性能(,如下所示

StatelessSession session = getSessionFactory().openStatelessSession();
Transaction transaction = session.beginTransaction()
// create and setup CarRequirements entity
transaction.commit;

问题是实体CarRequirements具有实体Car的外键。因此,当我尝试提交底层事务时,会发生异常,因为显然Car实体尚未提交到数据库。

有没有办法推迟底层事务的提交或Car实体的强制提交?

要么定义CarRequirements和Car(级联(之间的关系 或者您必须先保存汽车,然后保存护理要求

最新更新