2017-10-10 24 views
0

をjhipster使用して、データベースで今日の日付に日付を保存しますデータベース(MySql)。 私はjhipsterコードでAngular側から試しましたが、どれもうまくいきません。は常に私が以下に示されているようjhipster-jdl.jhファイルを使用してjhipsterであるエンティティを作成している

employeeLeaveのレコードを作成するとき、常にappliedDateが今日の日付と等しいようにする方法はありますか。 私は角度の側からの解決が望ましいことが好ましい。他のソリューションも歓迎されています。

技術:

データベース:MySQLの、 春ブーツ、角度4 、 Jhipster。あなたは、クラス内のあなたの日付を初期化することができ

+0

データベーステーブルの作成時にデフォルト値を適用することができます –

+0

'hibernate'を使用している場合は、' @ PrePersist'アノテーションを使用することができます。 – hrdkisback

答えて

0

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

ので、appliedDateは常に今日の日付になります。私はJava 8を使用していますが、そのアイデアはここにあります。

+0

正しい。 JVMの現在のデフォルトタイムゾーンに暗黙的に依存するのではなく、オプションの 'ZoneId'を常に渡すことをお勧めします。デフォルトは、ランタイム中の任意の時点で、そのJVM内の任意のアプリケーション内の任意のスレッドによって変更することができるため、信頼性がありません。 –

0

LocaleDate.now()はサーバー時刻です。サーバーがユーザー以外のタイムゾーンにある場合は、誤った日付を挿入する可能性があります。

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

: は次のように.controller.jsの日付を定義するために、より良いではないですか?

+0

私はjhipsterでアプリケーションを開発しているので、jhipsterは間接的にBaseEntityを作成し、それを私のEmployeeLeaveに継承します。そのため、コンポーネント内の変数に値を直接バインドすると、いくつかの条件が発生し、したがってapplyDateを直接保存することはできません。また、この質問を投稿する前にこのオプションを試しました。 –

関連する問題