Эта аннотация должна быть указана для постоянных полей или свойств типа java.util.Dateи java.util.Calendar. Его можно указывать только для полей или свойств этих типов.
TemporalАннотации могут быть использованы в сочетании с Basicаннотациями, в Idаннотации, или ElementCollectionаннотациях (когда значение элемента коллекции имеет такой временный типа.
В простых API Java временная точность времени не определена. Имея дело с временными данными, вы можете описать ожидаемую точность в базе данных. Временные данные могут иметь точность DATE, TIME или TIMESTAMP (т.е. фактическая дата, только время или и то, и другое). Используйте @Temporalаннотацию, чтобы настроить это.
Временные данные - это данные, относящиеся ко времени. Например, в системе управления контентом дата создания и дата последнего обновления статьи являются временными данными. В некоторых случаях временные данные требуют точности, и вы хотите сохранить точную дату / время или и то, и другое ( TIMESTAMP) в таблице базы данных.
Временная точность не указана в основных API Java. @Temporal- это JPAаннотация, которая преобразует метку времени и java.util.Date. Он также преобразуется time-stampво время. Например, в приведенном ниже фрагменте @Temporal(TemporalType.DATE) удаляется значение времени и сохраняется только дата .
@Temporal(TemporalType.DATE)
private java.util.Date creationDate;
Согласно javadocs,
Аннотация для объявления соответствующего {@code TemporalType} в параметрах метода запроса. Обратите внимание, что эту аннотацию можно использовать только с параметрами типа {@link Date} по умолчаниюTemporalType.DATE
[Информация выше собрана из различных источников]