728x90
사이트의 자유게시판의 게시글을 작성 할 때,
다중파일을 업로드할 수 있게 해주었기에 board 테이블과 file 테이블을 따로 만들어 관리를 하였다.
그럼 서비스에서 이와 같이 게시물을 추가하고 게시물ID를 가져와 그 게시물 ID에 맞게 파일을 넣어줘야 하는데,
게시물 ID는 DB에서 Auto-Increment로 자동생성이 되기 때문에
mapper에서 selectKey를 지정해 주지 않으면 파일 추가 할 때 에러가 나는 것을 확인하였다.
oracle을 사용 할때는 Auto_Increment이 없기 때문에 시퀀스를 만들어 주었고,
Mapper에서 insert하기 전, 게시판ID가 Null이면 1을 KeyProperty에 넣어줬었다.
이걸 Mysql에서 어떻게 처리할 지 찾아보다가,
LAST_INSERT_ID() 라는 것을 알게되었다.
SELECT LAST_INSERT_ID()는 마지막 생성된 Auto_Increment 값을 반환 해주는 구문이다.
이걸 이용해서 게시글이 저장되면 마지막 생성된 Auto_Increment 값을 keyProperty로 지정한 게시글ID에 넣어 줌으로써 해결하였다.
'TOY PROJECT > Music Archive V1.0(Spring)' 카테고리의 다른 글
[JSP] 스크립틀릿 Session NPE 체크 (0) | 2020.10.15 |
---|---|
[Mac/MySQL] utf8 설정 / Mac & Window 데이터 방식 (0) | 2020.10.14 |
[Spring] service, serviceImpl 구분 이유 / @Resource @Autowired @Inject 차이점 (0) | 2020.10.04 |
[Mac/STS] 설치 및 환경설정 (0) | 2020.10.03 |
[Mac/AWS] 학습 및 서버 구축 / RDS생성 및 Workbench 연동 (0) | 2020.10.02 |
댓글