Java에서 MySQL 날짜 시간 및 타임스탬프 관리
Java 애플리케이션에서 MySQL 데이터베이스로 작업할 때 날짜 및 시간 정보를 처리하는 것은 매우 어려울 수 있습니다. 사용 가능한 다양한 데이터 유형으로 인해 문제가 발생합니다. 적절한 절충안을 찾으려면 각 유형의 특성을 이해하는 것이 중요합니다.
Java의 표현
Java에서 날짜는 일반적으로 java.util로 표시됩니다. 데이트 클래스. 이 클래스는 날짜 및 시간 정보를 모두 포함하는 타임스탬프를 캡슐화합니다. java.util.Date의 정밀도는 일반적으로 밀리초 단위입니다.
MySQL의 표현
MySQL은 DATE, TIME 및 TIMESTAMP의 세 가지 표준 날짜 및 시간 유형을 제공합니다. JDBC에서 이러한 유형은 각각 java.sql.Date, java.sql.Time 및 java.sql.Timestamp에 매핑됩니다. 이러한 클래스는 java.util.Date의 하위 클래스입니다.
java.util.Date와 달리 java.sql.Date는 날짜 정보만 포함하고 java.sql.Time은 시간 정보만 포함합니다. 반면에 java.sql.Timestamp는 날짜와 시간 정보를 결합합니다. 이러한 유형의 정밀도는 데이터베이스에 따라 다르지만 밀리초 단위인 경우가 많습니다.
타임스탬프 저장
타임스탬프를 데이터베이스에 저장하려면 preparedStatement#를 사용할 수 있습니다. setTimestamp() 메서드.
<code class="java">java.util.Date date = getItSomehow(); Timestamp timestamp = new Timestamp(date.getTime()); preparedStatement = connection.prepareStatement("SELECT * FROM tbl WHERE ts > ?"); preparedStatement.setTimestamp(1, timestamp);</code>
타임스탬프 검색
데이터베이스에서 타임스탬프를 검색하려면 ResultSet#getTimestamp() 메서드를 사용할 수 있습니다.
<code class="java">Timestamp timestamp = resultSet.getTimestamp("ts"); java.util.Date date = timestamp; // You can just upcast.</code>
이러한 다양한 데이터 유형과 사용 패턴을 이해하면 MySQL 데이터베이스와 인터페이스할 때 Java 애플리케이션에서 날짜 시간과 타임스탬프를 효과적으로 관리할 수 있습니다.
위 내용은 Java 애플리케이션에서 MySQL 날짜 시간 및 타임스탬프를 효과적으로 관리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!