Spring Boot 2数据JPA:事务不会回滚

时间:2018-07-23 13:01:40

标签: spring spring-boot transactions spring-data-jpa

尽管服务方法引发了运行时异常,但事务不会回滚。

存储库:

public interface SchoolRepository extends CrudRepository<School, Long> {
    School save(School school);
}

服务:

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service
@Transactional
public class SchoolService {

    @Autowired
    private SchoolRepository schoolRepository;

    @Transactional
    public School save(final School school) {
        schoolRepository.save(school);
        if (true)
            throw new RuntimeException("eee"); // Explicitly throwing exception
        return school;
    }

}

通过在具有main方法的类中使用@EnableTransactionManagemen批注来启用事务。

尽管引发了异常,但是保存的数据仍然存在于DB中。

其他详细信息:

数据库:MySQL,版本= 5.7.18,引擎= MyISAM

春季启动版本:2.0.2.RELEASE

请帮助。

0 个答案:

没有答案