2017-10-10 61 views
0

保存日期爲今天的數據庫日期我一直在使用它,如下圖所示jhipster-jdl.jh文件中jhipster創建一個實體:始終使用jhipster

entity EmployeeLeave{ 
    appliedDate LocalDate required, 
    fromDate LocalDate required, 
    toDate LocalDate required, 
    status String 
} 

從這些領域,我想appliedDate今天的日期數據庫(MySQL的)。 我已經嘗試過從jirster代碼中的角度,但沒有幫助很好。

有什麼辦法可以爲employeeLeave創建記錄時,應該始終應用與當天日期相同的日期。 最好我想從角度方面的解決方案。其他解決方案也受到歡迎。

技術:

數據庫:MySQL和 春天開機, 角4, Jhipster。

+0

可以在數據庫表創建時應用默認值 –

+0

如果使用'hibernate',則可以使用'@ PrePersist'註釋。 – hrdkisback

回答

0

可以初始化你的約會你的類中:

public class EmployeeLeave{ 
    LocaleDate yourDate = LocaleDate.now(); 
    //other fields 
} 

所以,appliedDate永遠是今天的日期。我正在使用Java 8,但主意在這裏。

+0

正確。我建議總是傳遞可選的'ZoneId',而不是隱式地依賴於JVM當前的默認時區。缺省值可以在運行時的任何時刻由該JVM內的任何應用程序中的任何線程進行更改,因此它不可靠。 –

0

LocaleDate.now()是服務器時間。如果服務器位於另一個時區而不是用戶,可能會插入不正確的日期。 是不是更好像.controller.js定義日期:

     var now = new Date(); 
         vm.employeeLeave.appliedDate=now; 
         vm.isSaving = true; 
         EmployeeLeave.update(vm.employeeLeave, onSaveSuccess, onSaveError); 

+0

當我在jhipster中開發應用程序時,jhipster間接創建BaseEntity並將其繼承到我的EmployeeLeave中。因此,直接將值綁定到組件中的變量會違反一些條件,因此appliedDate不能直接保存。另外,我在發佈這個問題之前嘗試了這個選項。 –