본문 바로가기
공부/JAVA

[Mybatis] IndexOutOfBoundsException이 발생되었을때

by 얼빵이 2024. 6. 25.
반응형

요약 : DTO의 @NoArgsConstructor 기본 생성자를 확인해보자

 

프로젝트를 진행 중 IndexOutOfBoundsException이 발생되었다.

nested exception is org.apache.ibatis.exceptions.PersistenceException: Error querying database. Cause: java.lang.IndexOutOfBoundsException: Index 21 out of bounds for length 21

 

Mapper의 쿼리도 정상적으로 출력되는것을 확인했고 Mapper의 Result Type을 확인해도 이상이 없고

DTO 역시 모든 대소문자 오차없이 정확히 일치한다

 

Mapper

<select id="selectUserReport" parameterType="map" resultType="com.note.user.app.dto.AppExamEvaluationDTO">
        SELECT
            ~~
        FROM table
                 member
        WHERE 1=1
    </select>

 

원인은 DTO에 있었다

습관적으로 코딩을 하다보니 @NoArgsConstructor 기본 생성자 부분이 빠져있었다

@NoArgsConstructor를 추가해준 뒤 정상작동 확인

작은 실수로 많은 시간을 소비했다.

 

DTO

 

@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor // 기본 생성자가 빠져있었다
public class AppExamEvaluationDTO {
	private Long idx;

}
반응형

'공부 > JAVA' 카테고리의 다른 글

[Java] 덱(Deque) 자료구조  (0) 2023.05.11

댓글