我有一些服务层方法带有@Transactional(readOnly=true)
注释,这些方法经常导致一些RuntimeException
(比如说某些NotFoundException
异常)。
我还使用了ORM Hibernate来进行数据库交互处理。
这样做是否合法?
在这种情况下,"回滚"行为的默认行为是什么?它会对连接状态产生不良影响或者导致任何问题吗?
这不是像"为什么不尝试自己做一下?"那样简单。我怀疑在同一个方法中,当出现一定数量的异常后,会导致Transaction rolled back because it has been marked as rollback-only
错误。这个错误可能是非常特定的JDBC PostgreSQL驱动程序错误。这就是为什么我想知道这个设计是否合法的原因。