Ta adnotacja musi być określona dla trwałych pól lub właściwości typu java.util.Date
i java.util.Calendar
. Można go określić tylko dla pól lub właściwości tego typu.
Temporal
Adnotacji mogą być stosowane w połączeniu z Basic
przypisaniem, do Id
opisywania, lub ElementCollection
adnotacją (gdy wartość element pobierający jest takiego typu, w czasie.
W zwykłych interfejsach API języka Java czasowa precyzja czasu nie jest zdefiniowana. W przypadku danych czasowych możesz chcieć opisać oczekiwaną dokładność w bazie danych. Dane czasowe mogą mieć dokładność DATE, TIME lub TIMESTAMP (tj. Rzeczywista data, tylko godzina lub jedno i drugie). Użyj @Temporal
adnotacji, aby to dostosować.
Dane czasowe to dane dotyczące czasu. Na przykład w systemie zarządzania treścią data utworzenia i data ostatniej aktualizacji artykułu są danymi czasowymi. W niektórych przypadkach dane czasowe wymagają precyzji i chcesz przechowywać dokładną datę / godzinę lub obie te wartości ( TIMESTAMP
) w tabeli bazy danych.
Precyzja czasowa nie jest określona w podstawowych interfejsach API języka Java. @Temporal
to JPA
adnotacja, która jest konwertowana między znacznikami czasu i java.util.Date
. To także przekształca się time-stamp
w czas. Na przykład w poniższym fragmencie @Temporal(TemporalType.DATE)
zmniejsza wartość czasu i zachowuje tylko datę .
@Temporal(TemporalType.DATE)
private java.util.Date creationDate;
Zgodnie z javadocs,
Adnotacja umożliwiająca zadeklarowanie odpowiedniego {@code TemporalType} w parametrach metody zapytania. Pamiętaj, że ta adnotacja może być używana tylko z parametrami typu {@link Date} z wartością domyślnąTemporalType.DATE
[Powyższe informacje zebrane z różnych źródeł]