동글동글이
3k
2021-10-12 14:11:42
4
208

현재날짜 조회할 때 자바, DB 둘 중 어디서 시간을 조회하는게 정확할까요?


DB의 Sysdate를 통해 현재시간을 조회해올지

자바의 Calendar 클래스를 통해 현재시간을 조회해올지

보통 업무하실 때 어떻게 사용하시나요?

현재 환경은 혼재되어 있는 느낌이네요

0
  • 답변 4

  • 컴포지트
    2k
    2021-10-12 14:28:44

    대한민국 환경은 DB중심 설계이기 때문에 현재시간을 가져올 때 DB 기준으로 현재시간을 가져오도록 할 텐데요...

    그래서 현재시각을 가져올 경우 DB 업무가 포함된다면 DB 우선적으로 현재시각을 가져오고, 그 외에는 클래스를 통해 현재시각을 가져오는 게 관행입니다.

    네. 혼재되어 있을 수밖에 없어요. 겨우 시간 하나 가져오려고 DB 쓰면 좋아할 관리자는 없으니.

    하지만 알아야 할 중요한 사실은, DB나 앱이나 현재시각은 결국 설치된 OS에서 가져오게 됩니다.

  • 호이구름이
    86
    2021-10-12 14:29:18

    현재 시간을 왜 조회 하려는지에 따라서 달라질 것 같습니다.

    DB 테이블 데이터 조회를 위해서라면

    DB 테이블의 날짜컬럼에 데이터를 넣을때

    JAVA, DB 둘중 어떤 시스템 시간으로 insert 하는지에 따라 정해질 것이고

    단지 현재시간만 조회 한다고하면 굳이 DB에 접근 할 필요없이 JAVA에서 가져오면 되지 않을까요?

  • Dierslair
    5k
    2021-10-12 15:14:55

    그 날짜를 사용하는 곳에서 가까운 쪽이요

  • Mambo
    6k
    2021-10-12 19:53:57

    서버 OS간 시간 동기화를 잘 설정해두었다는 가정하에 윗 분 말씀대로 해당 시간이 필요한 곳에서 가져오는게 좋죠.

    시간 동기화에도 타이밍 이슈가 있고 디비에서 가져온다고해도 커넥션을 맺는 시간이 포함되니까요.

  • 로그인을 하시면 답변을 등록할 수 있습니다.