JPA QueryDsl 활용하여 목록 조회 기능을 개발하였다
테스트하려고 PostMan 으로 GetMapping API를 쏘았는데
500에러 NullPointerException 발생
도대체 뭐가 문제일까 코드를 살펴보니 코드상 문제는 없어보였는데... 문제는 아주 간단했다
개발단계에서 enum 을 활용하여 searchType에 세 가지를 설정해두었다.
- 제목으로 검색하는 경우
- 내용으로 검색하는 경우
- 제목+내용으로 검색하는 경우
총 세가지 검색조건 중 제목, 내용 두 가지는 아무 문제가 없었다.
"제목+내용" 이것도 이름을 "ALL", "둘다" 이런식으로 일반적인 문자열로 바꿔준 다음 API를 쐈을때는 문제가 없었다.
결론은 개발하면서는 아무 문제가 없더라도
URL 에 + 와 같은 특수문자가 들어가면 컴퓨터가 인식하는데 헷갈려한다는 것
이렇게 URL에 특수문자 인코딩된 값으로 바꿔주니 정상적으로 동작했고 개발해둔 결과값들이 조회가 되었다.
자바에서 인코딩, 디코딩 해주는 메소드도 있다고하니 궁금하신 분들은 검색해서
사용해보는 것도 좋을 듯 하다.
참고
https://kjcc2.tistory.com/2045
'JPA' 카테고리의 다른 글
Springboot + JPA + mariaDB 간단한 procedure 프로시저 만들고 호출하기 (0) | 2022.10.29 |
---|---|
SpringBoot + JPA 게시판 delete 삭제 메소드 @DeleteMapping 일괄삭제 or 다중삭제 @Query 활용 (0) | 2022.05.15 |