본문 바로가기
[ Developer ]/Core Java

[Java] Calendar Class 시간값 가져오기

by 김현섭. 2016. 3. 17.
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
시간값 

컴퓨터는 1970년 1월 1일 0시 0분 0초 부터 1초의 시간값은 1000으로 인식

1분 = 1000 * 60 / 1시간 = 1000 * 60 * 60



#1 현재 시간 가져오는 프로그램




컴퓨터의 시간은 1초에 1000값씩 증가한 값을 통해 시간값을 보인다

그래서 Date 클래스를 통해서 우리나라의 시간을 출력할 수 있다



#2 시간 출력 메소드




LocaleString을 통해서 우리나라의 현재 시간과 날짜값을 가져올 수 있다

GMT는 표준시간으로 우리나라와의 시간차이를 볼 수 있다

하지만 실무에 나가서는 Locale을 쓴다면 서버가 있는 해외의 시간을 가져오게 된다


시간의 경과를 나타내기 위해서는 System.currentTimeMillis();를 많이 사용하게 된다


또한 캘린더를 통해서 시간과 날짜값을 가져올 수도 있다



#3 캘린더 출력 메소드




이 정보안에는 날짜에 대한 많은 정보를 담고 있다 그 안의 정보 중 필요한 값들을 뽑아낸다면 필요한 시간값을 얻을 수 있다



#4 캘린더 요소 불러오는 메소드


다음과 같은 필요한 값들을 가져올 수 있다


내가 필요한 날짜값을 가져오기 위해서는 다른 방식을 이용해야 한다



#5 날짜 지정해서 캘린더 추출 메소드


위의 양식에 값을 넣는다면




응용 사례는 캘린더를 이용해서 시간차를 구하는 기능을 구현할 수 있다



#6 시간차 구하는 메소드

 값으로 나오기 때문에 / 1000을 해주면 

순수한 초가 나온다


그 초를 사용해서 일자를 체크해 봤다


결과는 

 으로서 16일차가 나온다


Math.round는 반올림 하기 위한 메소드이다



다음과 같이 시간이나 분까지도 할 수 있다 



또한 Calendar를 사용하여 이전의 날짜나 이후의 날짜를 알 수 있다



#7 시간 경과 후 날짜 값



시간 경과를 구할 땐 이전의 날짜나 이후의 날짜나 add를 사용해서 연산을 해주면 된다

달 까지 더해준다면 1달이 지난 후 값이나 -1을 한다면 이전 달의 시간 값을 알 수 있다



날짜는 DB가 관리하기 때문에 많이 사용되지 않지만 캘린더 클래스는 웹서버 운영에 있어서 날짜 검색할 때 사용된다. 월별로 날짜가 다르기 때문에 월별 날짜나 윤달의 여부나 그러한 점들을 구하기 위해서 캘린더를 사용한다