오늘은 가장 짜증났던 date타입 에러에 대해서 글을 쓴다 !
이번에 이 오류를 겪으면서 다음부터 무조건 DB에 저장할 때 , DTO는 String타입으로 써야겠다고 깨달았다
이유 )
DTO에 저장할 때 , Date타입으로 저장하면 to_char로 불러올 수가 없다! 이게 가장 큰 이유!
애초에 저장을 했을 때, DTO에 Date타입으로 저장했으니까 to_char로 불러올 수가 없다
왜냐하면 to_char은 문자형으로 바꿔주는 건데, 내가 저장한 것은 Date타입이기 때문에 이 방법으로 불러올 수 없음.
그래서 내가 해결책을 여러가지 찾았는데
1. startdate 그 자체를 Date타입으로 불러와서 컨트롤러에서 내가 원하는 방식으로 파싱하는 것
2. DTO를 새로 만들어서 그 DTO에 값을 받아오는 방법
원래 기존 방식일 때, DTO가 date타입이면 to_char(b.mov_start_date,'yyyy-mm-dd')를 불러올 수 없는데
저 새로만든 DTO에 쿼리문을 적용하면 to_char 그 자체로 불러올 수 있다.
========================================
이런 작업이 귀찮기 때문에... 애초에 String으로 만들고 저장할 때 to_date를 이용해서 저장하는 방법이 제일 맞다고 본다.
그리고 내가 월/일/요일/시/분 다 필요할 때 애초에 테이블에서 이 컬럼을 만들어서 사용하는 방법이 제일 편한 것 같다.
이 오류에 대해 해결했으니까, 최종 완성을 한 후 다시 이 방법으로 구현해볼 것이다.
'파이널 프로젝트' 카테고리의 다른 글
변수 이름에 자료형 사용X subjectList처럼 이렇게 사용X (0) | 2022.11.09 |
---|---|
내 생각대로 새로 짠 영화관 ( 좌석 , 관 설계 ) - 구현에만 집중 (0) | 2022.11.02 |
5)영화관 만들기 - 어떻게 하면 CGV처럼 구현할 수 있을까? (0) | 2022.10.28 |
2)영화관 만들기 - 예매 페이지 구현 과정(자바스크립트 사용) (0) | 2022.10.17 |
1)영화관 만들기 - 예매 페이지 구현 과정(DB설계 후,페이지만들기) (1) | 2022.10.15 |