2 개의 서버에 두 개의 프로그램이 있습니다. 프로그램 A는 영국 서버에 있고 프로그램 B는 미국 서버에 있습니다.Java에서 표준 시간대 변환을 적용하지 않고 두 개의 다른 표준 시간대 사이에 Date 객체 전달
프로그램 A에서 프로그램 B까지 날짜 개체를 전달해야합니다. 그러나 프로그램 B에서 날짜 개체를 가져 오면 표준 시간대 변환을 사용하여 개체를받습니다. 이 표준 시간대 변환을 적용하지 않고 한 서버에서 다른 서버로 날짜 개체를 전달하려면 어떻게해야합니까?
참고 :이 작업은 다음과 같이 Calender 개체를 통해 수행 할 수 있습니다. 하지만 제 경우에는 Date 객체를 사용하고 싶습니다. 프로그램 B에서
: 나는 직렬화 구현하고 있기 때문에
Date checkInDate = new Date(cal1.get(Calendar.YEAR) - 1900 , cal1.get(Calendar.MONTH) , cal1.get(Calendar.DATE), cal1.get(Calendar.HOUR_OF_DAY), cal1.get(Calendar.MINUTE), cal1.get(Calendar.SECOND));
Date checkOutDate = new Date(cal2.get(Calendar.YEAR) - 1900 , cal2.get(Calendar.MONTH) , cal2.get(Calendar.DATE), cal2.get(Calendar.HOUR_OF_DAY), cal2.get(Calendar.MINUTE), cal2.get(Calendar.SECOND));
java.util.Calendar는 날짜를 나타내는 데 사용되며 날짜 변환도 java.util.Date의 메소드 대부분이 사용되지 않습니다 ... 왜 Calendar를 사용하지 않으시겠습니까? – sachinrahulsourav
java.util.Date는 절대 시간대이며 시간대가 없습니다. 예상대로 작동하지 않는 코드의 예는 서버간에 객체를 전달하는 데 사용하는 메소드에 대한 정보를 질문 :) 이해하는 데 매우 도움이됩니다. – Affe
날짜를 어떻게 전달합니까? 웹 서비스? DB와 JDBC를 통해? 다른 것? 대답은 전송 (GMT)이 좋은 해결책 인 '알려진'시간대로 변환하는 것이 일반적이지만 각 전송과 다를 수 있습니다. 또한 TZ 변환을 원하지 않는 이유는 무엇입니까? – ptyx