728x90
문제 발생
관리자페이지에서 상품 삭제버튼을 클릭하니 삭제 실패라는 에러 문구와 함께 해당 에러가 발생했다.
실제 DB에도 확인해 본 결과 상품이 제대로 삭제되지 않았다.
원인 분석
이 오류는 INSERT, UPDATE, DELETE문을 사용할 때 executeUpdate() 메서드를 사용하지 않았기 때문에 발생한다.
- SELECT 쿼리를 보낼 때에는 결과를 받아와야 하기 때문에 executeQuery() 메서드를 사용해야 한다.(조회한 행의 갯수를 반환)
- INSERT, UPDATE, DELETE 쿼리를 보낼 때에는 결과값이 없기 때문에 executeUpdate() 메서드를 사용해야 한다.
문제 해결
INSERT, UPDATE, DELETE 쿼리를 실행할 때는 executeUpdate() 메서드를 사용하도록 @Modifying 어노테이션을 사용해야 한다. 따라서 @Modifying을 작성한 쿼리와 함께 붙여주면 간단하게 해결할 수 있다.
728x90
'Projects > 쇼핑몰 프로젝트' 카테고리의 다른 글
AWS EC2를 이용한 Springboot + Mysql 서비스 배포 (0) | 2023.03.31 |
---|---|
트랜잭션 스크립트 패턴 > 도메인 모델 패턴으로 변환해보기 (0) | 2023.03.03 |
[JUnit] Spring Security 로그인 테스트 (0) | 2023.02.27 |
[장바구니] 장바구니 기능구현(상품추가, 수량변경) (0) | 2023.01.13 |
[주문] 아임포트 결제 & 결제 성공 시 주문 로직 구현 (4) | 2023.01.09 |
댓글