참고
- 날짜 데이터 연산의 달인기술을 전수하기 (1) - http://staropener.tistory.com/451
- 날짜 데이터 연산의 달인기술을 전수하기 (2) - http://staropener.tistory.com/452
- 날짜 데이터 연산의 달인기술을 전수하기 (3) - http://staropener.tistory.com/453
- Java에서 표준시(Global Time)와 지방시(Local time)를 상호 변경하는 함수 - http://blog.acronym.co.kr/archive/20120718
- 다국어, 국제화 웹 사이트 개발시 고려사항 - http://jace.tistory.com/121
- Global 환경에서 프로그래밍 하기 - Time Zone 이야기 - http://www.smartplace.kr/blog_post_332.aspx
참고 소스
/**
* 서버시간인 서울 타임존을 기준으로 각 타임존에 맞는 시간으로 포맷 변경하여 출력함.
* @param time 변경 대상 시간
* @param format 시간 포맷
* @param offset 변경할 타임존 offset (분) - sso연동시 분 단위로 값을 넘겨받음 (TIMEZONE = +540)
* @return
*/
public static String getTimeWithTimezone(String time, String format, String offset) {
String result = "";
try {
if( !offset.equals("+540") ) { // 서울 시간이 아닌경우에만 로직 수행
int timezoneOffset = Integer.parseInt(offset.replace("+", ""));
TimeZone seoulTZ=TimeZone.getTimeZone("Asia/Seoul");
SimpleTimeZone outputTz = new SimpleTimeZone( timezoneOffset * 60 * 1000, "GMT"); // 출력하고자 하는 Timezone 으로 변환
SimpleDateFormat inputFmt = new SimpleDateFormat(format + " Z");
SimpleDateFormat outputFmt = new SimpleDateFormat(format);
Calendar c = Calendar.getInstance(seoulTZ);
c.setTime( inputFmt.parse( time + " +0900" ) ); // 서버시간인 서울시간 기준으로 입력
outputFmt.setTimeZone(outputTz);
result = outputFmt.format(c.getTime());
}else{
result = time;
}
} catch (Exception e) {
// System.out.println("getTimeWithTimezone 오류 발생 : "+e.getMessage());
result = time;
}
// System.out.println("타임존 offset : "+offset);
// System.out.println("입력된 시간 : "+time);
// System.out.println("변환 시간 :"+ result);
return result;
}
'Dev. 참고자료' 카테고리의 다른 글
2019 Alfred 4 upgrade!! (0) | 2019.06.04 |
---|---|
[intelliJ TIP] mac terminal에서 intelliJ 실행하기 (0) | 2017.06.05 |
[eclipse tip] 이클립스 오류 해결 - Requesting JavaScript AST from selection (2) | 2015.07.30 |
[eclipse] 이클립스 플러그인(plugin) 업데이트/제거/삭제하기 (0) | 2015.05.19 |
[eclipse] 웹개발 시작하기 - 이클립스 + tomcat 초기 세팅 및 최적화 한방에 끝내기! ( ini, preference, plugin ) (0) | 2015.05.11 |