Hibernate 在没有事务的情况下持久化

Liu*_*x31 5 java spring hibernate

我正在学习有关 Hibernate 的教程并看到以下代码:

package com.websystique.spring.dao;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;

public abstract class AbstractDao {

    @Autowired
    private SessionFactory sessionFactory;

    protected Session getSession() {
        return sessionFactory.getCurrentSession();
    }

    public void persist(Object entity) {
        getSession().persist(entity);
    }

    public void delete(Object entity) {
        getSession().delete(entity);
    }
}
Run Code Online (Sandbox Code Playgroud)

我想知道persist()(或save()delete())是否可以在没有事务的情况下使用?就像这里的情况一样。

小智 5

你不能在没有事务的情况下保存或持久化对象,你必须在保存对象后提交事务,否则它不会保存在数据库中。 没有事务,您只能从数据库中检索对象