我正在使用Spring 3.1.0.RELEASE,JSF 2.x,JPA 2和Hibernate Provider,MySql 5.1.x來完成一個Web應用程序。該應用程序在Tomcat 7.X上運行。觸發器與JPA事件
在我的實體,我有一些日子像上次更新日期:
@Column(name = "last_update_date", insertable = false, updatable = false)
@Temporal(TemporalType.TIMESTAMP)
private Date lastUpdateDate;
目前我有一個觸發的更新:
CREATE TRIGGER upd_site BEFORE UPDATE ON site
FOR EACH ROW SET NEW.last_update_date = CURRENT_TIMESTAMP();
它工作正常,但我注意到,有是JPA中的一些回調方法http://www.objectdb.com/java/jpa/persistence/event
JPA Events和MySql的觸發器之間的最佳方式是什麼?
謝謝。
JPA事件唯一的問題是如果你想用SQL更新數據庫?這將繞過JPA事件。一般來說,數據庫應該是自治的,因此DBA會告訴你使用觸發器。開發人員更喜歡JPA事件。 –