Ta adnotacja musi być określona dla trwałych pól lub właściwości typu java.util.Datei java.util.Calendar. Można go określić tylko dla pól lub właściwości tego typu.
TemporalAdnotacji mogą być stosowane w połączeniu z Basicprzypisaniem, do Idopisywania, lub ElementCollectionadnotacją (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 @Temporaladnotacji, 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. @Temporalto JPAadnotacja, która jest konwertowana między znacznikami czasu i java.util.Date. To także przekształca się time-stampw 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ł]