Extended Hibernate annotationCreationTimestamp ، @updatetimestamp يدعم أنواع الوقت الجديدة في Java8
نسخة السبات: 4.3.5.final
نسخة الكود كما يلي:
حزمة com.hibernate.annotation ؛
استيراد org.hibernate.hibernateException ؛
استيراد org.hibernate.tuple.annotationValueGeneration ؛
استيراد org.hibernate.tuple.valuegenerator ؛
استيراد java.lang.annotation.annotation ؛
استيراد java.sql.time ؛
استيراد java.sql.timestamp ؛
استيراد java.time.localdate ؛
استيراد java.time.localdatetime ؛
استيراد java.time.localtime ؛
استيراد java.util.calendar ؛
استيراد java.util.date ؛
/**
* تم إنشاؤها مع فكرة intellij.
* المستخدم: Zhonggang
* التاريخ: 14-4-16
* الوقت: 11:40 صباحا
* <p/>
* دعم حزم الوقت الجديدة لجافا 8
*
* see java.time.localdatetime
* see java.time.localdate
* see java.time.localtime
*/
الجمهور التجريدي ClasseTimegeneration <A يمتد التعليق التوضيحي> يبرز التعليق التوضيحي ValueGeneration <a> {{
المولد Valuegenerator المحمي <؟> ؛
@تجاوز
تهيئة الفراغ العام (تعليق ، فئة <؟> propertyType) {
if (localDateTime.class.isAsasignableFrom (propertytype)) {
المولد = (الجلسة ، المالك) -> localDateTime.Now () ؛
} آخر إذا (localdate.class.isassignableFrom (propertyType)) {
المولد = (الجلسة ، المالك) -> localDate.Now () ؛
} آخر إذا (localtime.class.isAsassignableFrom (propertyType)) {
مولد = (جلسة ، مالك) -> localtime.now () ؛
} آخر if (java.sql.date.class.isAssignableFrom (propertyType)) {
مولد = (جلسة ، مالك) -> java.sql.date new (date date (). getTime ()) ؛
} آخر إذا (time.class.isAsassIgnableFrom (propertyType)) {
المولد = (الجلسة ، المالك) -> وقت جديد (تاريخ جديد (). getTime ()) ؛
} if if (timestamp.class.isAsassignablefrom (propertyType)) {
مولد = (جلسة ، مالك) -> طابع زمني جديد (تاريخ جديد (). getTime ()) ؛
} آخر if (date.class.isAsassIgnableFrom (propertyType)) {
المولد = (الجلسة ، المالك) -> تاريخ جديد () ؛
} آخر إذا (calendar.class.isAsassignablefrom (propertyType)) {
مولد = (جلسة ، مالك) -> {
التقويم التقويم = calendar.getInstance () ؛
Calendar.Settime (New Date ()) ؛
إرجاع التقويم
} ؛
} آخر {
رمي heibernateException جديد ("نوع الخاصية غير المدعومة لشرح توضيح المولد" + التعليق التوضيحي.
}
}
@تجاوز
public valuegenerator <؟> getValueGenerator () {
مولد الإرجاع
}
@تجاوز
المرجعية المنطقية العامة المرجعية () {
العودة كاذبة
}
@تجاوز
السلسلة العامة getDatabaseGeneratedRevenedColumnValue () {
العودة لاغية.
}
}