오류 해결

겨울·2023년 10월 31일
post-thumbnail

최종 프로젝트 코드 중
팀 리더 친구가 git pull 땡기라고 해서 땡기고 중복오류를 수정했다.
그리고 실행했지만

Caused by: org.springframework.dao.DataIntegrityViolationException: could not execute statement [(conn=240) Duplicate entry '성 범죄' for key 'UK_pmwr8kj5182n1otl8aph7d4r6'][insert into first_category (title) values (?)]; SQL [insert into first_category (title) values (?)]; constraint [UK_pmwr8kj5182n1otl8aph7d4r6]

이런 오류가 발생했다.
즉, 성 범죄라는 데이터 테이블이 이미 존재해서 다시 만들수 없고 그로인해 키 중복값이 뜨기에
오류가 발생한다는 뜻이였다.

 Optional<MilyUser> mu = milyUserService.findByUserLoginId("admin123");
            if (mu.isEmpty()) {

이 부분을 자세히 리뷰해보았다.
Optional 은 값의 여부를 확인하는 메소드이다.
mu.isEmpty 는 true 또는 false 값을 구분한다.
admin123 이라는 존재의 계정을 찾지 못한다면 if 문으로 실행을 시키고, 찾는다면 실행 시키지 않는다.


해결방안

DB데이터 베이스에 생성된 기존의 표를 삭제를 한 후에 다시 실행하여 보니
표가 새롭게 생성이 되어 정상적으로 작동이 됐다.
RUN 콘솔창에서도 확인이 되듯이 Hibernate 생성이 최초 실행보다는 실행이 덜 되는걸 볼 수 있다.
즉, UPDATA로 설정을 했기에 가능했다.

0개의 댓글