0
我有這個很簡單的Grails實體:Grails - 爲什麼setDateCreated被多次調用?
package timestamp.fail
class Post {
String title
String body
Date dateCreated
static constraints = {
title(blank: false)
body(blank: false)
}
void setDateCreated(Date d){
dateCreated = d
if(dateCreated){
System.out.println(" dateCreated OK!!! ")
}
else{
System.out.println(" dateCreated null =/ ")
}
}
}
我一直在做了它的一些調試,發現當我保存實例setDateCreated多次調用。我注意到一件奇怪的事情是,當從BootStrap.groovy中保存一個實例時,第一個setDateCreated被調用,但「d」參數爲null,儘管接下來的兩次調用是正確的。
爲什麼被稱爲這麼多次?它背後是否有某種生命週期?我應該依靠哪種執行方式來創建創建日期的邏輯?我不應該依賴這個日期去做別的事嗎?
謝謝!
關於http://jira.grails.org/browse/GRAILS-9805的評論可能有助於理解某些方面。 –
謝謝,FlareCoder! – felipecao