Programming/Java

[JAVA] Instance Time

bisi 2020. 4. 7. 12:03
개념
  • 시간을 타임스탬프로 다루기 위해서 사용한다.

  • 타임스탬프는 UTC 기준으로 EPOCH TIME(1970-01-01 00:00:00)을 0으로 정하고, 그로부터  경과된 시간을 양수 또는 음수의 나노초 단위로 표현한다.

  • Date형으로변환 가능하다

  • 항상 UTC(+0:00) Timezone을 사용하기 때문에 주의해야 한다. (시간대를 고려해야 할 경우는 OffsetDateTime사용한다)

  • immutable 하면서 thread safe하기 때문에 쓰레드간 경합 상황에서도 사용이 가능하다. 

 

예제
 

현재 시간의 타임스탬프 값을 구하기 

 

1
2
3
4
5
6
7
8
Instant current = Instant.now();
System.out.println("Current Instant = "+ current);
 
long epochSecond = current.getEpochSecond();
System.out.println("Current Timestamp in seconds = " + epochSecond);
 
long epochMilli = current.toEpochMilli();
System.out.println("Current Timestamp in milli seconds = " + epochMilli);

 

결과 

 

1
2
3
Current Instant = 2017-12-22T08:30:18.870Z
Current Timestamp in seconds = 1513931481
Current Timestamp in milli seconds = 1513931418870

'Programming > Java' 카테고리의 다른 글

[java] if continue 문  (0) 2020.04.16
[JAVA] protected 접근 단계  (0) 2020.04.01
[자바] public protected private  (0) 2020.03.31