inblog logo
|
p4rksk
    DB&SQL

    실무 설계 방식

    박선규's avatar
    박선규
    Mar 31, 2025
    실무 설계 방식
    Contents
    소요 시간은 int로 Timestamp, LocalDateTime

    소요 시간은 int로

    📌
    소요 시간에 의미는 ‘언제’가 아닌 ‘얼마나’이기 때문에, 정수 형으로 받아야 나중에 쿼리에서 또는 계산 로직에서 계산하기 쉽다.
     

    Timestamp, LocalDateTime

    📌
    TImestamp의 경우 시간대가 표현 돼서 절대적인 시점을 저장 할 때 사용한다. ('2025-03-29 14:05:22’)
    LocalDateTIme의 경우 시간대 없이 날짜 + 시간으로 표현이 된(LocalDateTime.of(2025,3,29,14,5,22))
     
    엔티티에서는 LocalDateTime DB에서는 TimeStamp로 생성하면 자동 매핑해준다. 또 @CreationTimestamp를 엔티티 컬럼에 사용해서 자동으로 생성되는 시간 기점으로 데이터가 들어가게 해줘야 한다.
     
     
    ✔ 3️⃣ 만약 실제 “사용자 요청 시간”을 별도로 관리하고 싶다면?
    👉 그건 LocalDateTime.now()를 컨트롤러/서비스 레이어에서 수동으로 넣어주는 게 더 정확해!
    User user = User.builder() .username("kim") .password("1234") .requestedAt(LocalDateTime.now()) // 수동 설정 .build();
    📌 이렇게 하면 → "HTTP 요청이 들어온 시간" 기준으로 정확히 분리 가능!
     
    Share article

    p4rksk

    RSS·Powered by Inblog