Package org.hibernate.annotations
Annotation Interface CurrentTimestamp
Specifies that the annotated field of property is a generated timestamp,
and also specifies the timing of the timestamp
generation, and whether it is generated in Java or by the database:
source = VMindicates that the virtual machine current instant is used, andsource = DBindicates that the databasecurrent_timestampfunction should be used.
By default, the timestamp is generated by the database, which might require an extra round trip to the database to fetch the generated value, depending on the capabilities of the database and driver.
This annotation may be used in combination with the JPA-defined
Version annotation.
The annotated property may be of any one of the following types:
Date,
Calendar,
Date,
Time,
Timestamp,
Instant,
LocalDate,
LocalDateTime,
LocalTime,
MonthDay,
OffsetDateTime,
OffsetTime,
Year,
YearMonth, or
ZonedDateTime.
A field annotated @CurrentTimestamp may not be directly set
by the application program.
- Since:
- 6.0
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionDetermines when the timestamp is generated.Specifies how the timestamp is generated.
-
Element Details
-
event
EventType[] eventDetermines when the timestamp is generated. But default, it is updated when any SQLinsertorupdatestatement is executed. If it should be generated just once, on the initial SQLinsert, explicitly specifyevent = INSERT.- Default:
{INSERT, UPDATE, FORCE_INCREMENT}
-
source
SourceType sourceSpecifies how the timestamp is generated. By default, it is generated by the database. Depending on the capabilities of the database and JDBC driver, this might require that the value be fetched using a subsequentselectstatement. Settingsource = VMguarantees that this additionalselectnever occurs.- Default:
DB
-