728x90
1. MySQL 시간을 담을 컬럼은 DATETIME으로 설정
2. DTO에 Timestamp 타입으로 선언
private Timestamp createDate;
3. 생성 시점에 시간 셋팅해주기
member.setCreateDate(Timestamp.valueOf(LocalDateTime.now())); // 회원가입 시간
- Member member
- Timestamp.valueOf(LocalDateTime.now()) : 해당 로직 실행 당시 시간을 리턴
오류 발생 : 생성 시간보다 3시간 추가돼서 DB에 저장되는 것을 발견.
해결 : application.properties 파일에서 UTC부분을 Asia/Seoul로 수정
spring.datasource.url=jdbc:mysql://localhost:3306/board?serverTimezone=UTC&characterEncoding=UTF-8
spring.datasource.url=jdbc:mysql://localhost:3306/board?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
'Web > SpringBoot' 카테고리의 다른 글
[Spring Boot] 컨트롤러에서 redirect 경로 (0) | 2021.12.30 |
---|---|
[Spring Boot] 페이징 ( + MyBatis, 타임리프) 및 타임리프 리스트 띄우기 (0) | 2021.12.28 |
[Spring Boot] MyBatis + MySQL 셋팅 (+동적 쿼리) (0) | 2021.12.21 |
[Spring Boot] JPA 복합키에 따른 repository (0) | 2021.12.20 |
[Spring Boot] 커스텀 Validator로 폼 입력값 검증하기 (0) | 2021.12.19 |