요청 URL에 따라 날짜를 다른 요청한 시간대로 변환하고 날짜와 시간을 String으로 변환해야합니다. 나는 봄 부팅과 자바 8을 사용하고다른 시간대로 java.util.Date을 변환하십시오.
3.2 그래서 서비스 방법 안에, 내가 먼저 아래와 같은 시간대를 설정 몽고,
TimeZone.setDefault(TimeZone.getTimeZone(TIME_ZONE))
하지만 통지하고, 그것은 전체 자바의 시간대를 변경합니다 신청. 따라서 메서드 이탈도 시간대는 이전에 설정 한 표준 시간대로 유지됩니다.
그래서 대신 setDefault
메소드 레벨, I는
(할당이 MongoDB의 컬렉션에 매핑 assignmentEndDate라는 속성으로 java.util.Date
갖는 Assignmet 문서 클래스, 아래와 SimpleDateFormat
에 구체적으로 설정.에서 몽고 DB assignmentEndDate 인 UTC로 저장)
java.text.DateFormat formatter = new SimpleDateFormat("MM/dd/yyyy'T'HH:mm:ss.SSS");
formatter.setTimeZone(TimeZone.getTimeZone(timezone));
Date assignmentEndDate = assignment.getAssignmentEndDate();
formatter.format(assignmentEndDate);
이렇게하면 응용 프로그램 수준 시간대가 변경되지 않습니다. 이 시나리오에 대한 올바른 접근 방법입니까? 새 날짜 시간 API의
당신은'java.util.Date'에 제약을 받고'java.time' 패키지를 사용할 수없는 이유가 있습니까? –
귀하의 코드는 이전 Java 날짜/시간 API에 대해 정확합니다. – jtahlborn
@jtahlborn 그렇다면 java.util.Date 대신 java.time API를 사용하는 것이 좋습니다. – Harshana