当刷新脏操作发生时,我可以监听的Hibernate的EventType是什么(例如,在不调用Persistent()的情况下更新托管实体)?
我已经查看了文档,但没有找到在这种情况下触发的文档https://docs.jboss.org/hibernate/orm/4.3/javadocs/org/hibernate/event/spi/EventType.html
我发现这个问题可能正是我想要的,但它仍然是开放的https://hibernate.atlassian.net/browse/HHH-8042
我想让这个事件添加某种类型的日志记录(并自动更新updatdAt列)。我想我可以用Interceptor.onFlushDirty来做同样的事情,但它看起来更丑。
1条答案
按热度按时间2izufjch1#
有多个刷新事件侦听器:
DefaultFlushEntityEventListener
DefaultFlushEventListener
DefaultAutoFlushEventListener
其中每一个都有自己的方法来验证会话是否脏。它们都没有为您提供“脏”刷新更新的扩展点。
因此,您有两个选择:
1.您可以使用
Interceptor.onFlushDirty
1.可以使用
PostUpdate
注解添加一些更新时间逻辑。