인프런 커뮤니티 질문&답변

멜론우롱차님의 프로필 이미지

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

Validator 분리1

itemValidator.supports(item) 질문

22.01.06 06:39 작성

·

501

0

=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
안녕하세요 선생님!
강의 5:20~ 27쯤에 나오는 내용입니다!
 
if(itemValidator.supports(item))
형태로 supports 로 한번 타입 검증을 하고 코드 진행 하고 싶은데,
선생님 영상에는 오류가 없는데, 저는 타입 미스매치가 나와서요..
 
<질문>
item 위치에 Class<?> 타입이 필요하다는데,
(item)이 아닌 다른 값을 넣어줘야하는건가요?
 
참고로 ItemValidator 쪽의 supports 쪽에는 영상과 동일하게
public boolean supports(Class<?> clazz) {
return Item.class.isAssignableFrom(clazz);
}
 
로 오버라이딩했습니다!
 
시간되실 때 천천히 답변 부탁드리겠습니다
감사합니다
 
 
 
 
 
 

답변 4

2

이창종님의 프로필 이미지

2022. 01. 18. 18:25

item으로 넣지 마시고 item.getClass()로 한번 넣어서 테스트 해보시겠어요?

멜론우롱차님의 프로필 이미지

2022. 01. 18. 18:36

이런저런 시도해볼때 getClass()로 해봤던것같긴한데!
한번 다시 해보겠습니다! 답변 감사합니다! 

이창종님의 프로필 이미지

2022. 01. 18. 21:33

돼셨다면 다행입니다 ^^

2

김영한님의 프로필 이미지
김영한
지식공유자

2022. 01. 06. 22:42

안녕하세요. 이원회이원회님

강의 자료로 드리는 코드와 비교해보시겠어요?

멜론우롱차님의 프로필 이미지

2022. 01. 18. 18:36

답변 감사합니다!

0

bae jewoo님의 프로필 이미지

2024. 06. 04. 20:29

item은 Item Class 인스턴스(객체)여서
instanceof 를 사용해야 하는데
supports 에서 사용하는건
isAssignableFrom 이어서 클래스 객체(클래스 메타 데이터)를
넘겨줘야 해서 getClass()로 넘겨야 합니다.

0

seongchan hwang님의 프로필 이미지

2023. 03. 01. 23:24

저도 같은 문제가 있었는데 getClass하니까 되네요 감사합니다.