반응형
요약 : 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 |
---|
댓글