JPA 및 Hibernate에서 UTC 시간대를 사용한 날짜 및 시간 관리
문제:
UTC 시간대의 날짜/시간 값을 저장하고 검색하도록 JPA 및 Hibernate를 어떻게 구성할 수 있습니까?
JPA 엔터티 구조:
주석이 추가된 다음 JPA 엔터티를 고려하세요.
<code class="java">public class Event { @Id public int id; @Temporal(TemporalType.TIMESTAMP) public java.util.Date date; }</code>
시나리오:
날짜 값이 2008년 2월 3일 오전 9시 30분 태평양 표준시(PST)라고 가정합니다. 우리는 해당 UTC 시간인 2008-2월-03 오후 5시 30분을 데이터베이스에 저장하는 것을 목표로 합니다. 마찬가지로, 데이터베이스에서 검색할 때 이 날짜는 UTC로 해석되어야 합니다. 즉, 표시될 때 오후 5시 30분(UTC)은 오전 9시 30분(PST)으로 변환된다는 의미입니다.
해결책:
Hibernate 5.2부터는 다음 속성을 활용하여 UTC 시간대를 명시적으로 설정할 수 있습니다.
<code class="xml"><property name="hibernate.jdbc.time_zone" value="UTC"/></code>
이 속성을 Properties.xml JPA 구성 파일에 추가하세요.
Spring Boot 사용자의 경우 , application.properties 파일에 속성을 추가합니다:
<code class="properties">spring.jpa.properties.hibernate.jdbc.time_zone=UTC</code>
이 구성을 구현함으로써 JPA와 Hibernate는 모든 날짜/시간 값이 UTC 시간대에 저장되고 검색되도록 보장하여 일관된 해석과 다양한 시간대에 걸쳐 정확성을 보장합니다.
위 내용은 JPA 및 Hibernate를 사용하여 UTC로 날짜/시간 값을 저장하고 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!