我遇到了spring数据jpa存储库的问题。
在存储库接口上执行save()
方法后,数据库中不会更新数据。同样的情况是delete()
以及修改数据库的任何其他查询。
当我将日志级别设置为DEBUG时,除了SELECT之外,我看不到任何错误和查询。
我的应用程序在Windows上的tomcat 8上正常运行,但是当我使用相同版本的tomcat切换到Linux时,它无效。
我在Windows和Linux上使用相同的数据库。
你知道什么是错的吗?
修改
当我在存储库上调用saveAndFlush()
时,我得到了异常:
javax.persistence.TransactionRequiredException: no transaction is in progress
看起来我没有打开交易,但我有。
@Transactional
@Override
public void savePost(Post post) {
this.postRepository.saveAndFlush(post);
}
编辑2 我试图在Mac OS X上部署这个应用程序,它的工作原理。 怎么了?
编辑3 是的,我通过以下行启用了春季交易管理:
<tx:annotation-driven proxy-target-class="true" transaction-manager="transactionManager"/>