웹 개발

이메일 API 코드를 Spring Boot로 변환할 때 경고 처리

_KH_ 2025. 4. 22. 12:17

다음과 같은 코드가 있었는데 원래 60라인에 노란색 줄이 떴었다.

 

확인해보니 데이터가 확실히 Map 형식인지 확인할 수 없다는 경고.

 

그래서 @SuppressWarnings("unchecked")를 추가해줬는데 이때 response와 callback 2가지가 뜨길래 궁금해서 찾아봤다.


[ @SuppressWarnings("unchecked") ]

※ suppressWarnings :

경고가 제거되지만 검사 없이 강제 캐스팅 하는 방식이다. 응답 구조가 항상 같다면 사용해도 된다.

 

=> 해당 코드에서 profileMap.get(”response”)는 항상 Map<String, Object> 형태이므로 사용해도 된다.


[ @SuppressWarnings("unchecked")에서 response와 callback 차이 ]

  1. callback : 해당 메서드 전체에 경고 무시를 적용한다.
  • @SuppressWarnings를 메서드 선언부에 붙임

 

2. response : 해당 변수 선언줄(한 줄) ****에만 경고 무시를 적용한다.

  • @SuppressWarnings를 변수 선언 앞에 붙임

웬만하면 필요한 줄에만 한정해서 쓰는 것이 좋기 때문에 response 라인에만 붙이는 게 안전하다.


+ ) Object로 받고 instanceof 검사 후 캐스팅해도 된다고 한다

'웹 개발' 카테고리의 다른 글

XML 파일로 AOP 적용하기  (0) 2025.04.24
AOP  (0) 2025.04.23
JSP/Servlet → Spring Boot 이관 중 배운 점  (0) 2025.04.21
web.xml, applicationContext.xml  (0) 2025.04.20
DB 이관  (0) 2025.04.19