java.lang.ClassCastException: java.util.ArrayList cannot be cast to VO 객체 경로

2022. 12. 15. 10:34·🚀 from error to study/Java

 

 

 


💡 현재 상황

해당 컨텐츠에 대한 내 코멘트를 뽑아 화면에 뿌려 줘야 하는데 해당 쿼리를 통해 한 화면당 뽑을 리뷰는 언제나 1개뿐!

그래서 ArrayList<Review>에서 Review로 자료형 변환해 줬더니 ClassCastException이 뜸

 

 

 

📍 해결 방법

Dao의 selectList도 selectOne으로 바꿔 줘야 함


 

 

 

 

여태까지의 화면에서는 3개 이상의 리뷰를 뽑았기 때문에 ArrayList<Review>를 썼는데

해당 화면에서는 1개의 리뷰만 뽑기 때문에 ArrayList<Review>를 쓰는 것은 데이터 소모를 일으킨다고 혼났음 (핑빈에게)

 

 

 

Controller, Service, ServiceImpl, Dao의 ArrayList<Review> 자료형을 모두 Review로 바꿔 줬더니 위의 오류 뜸

 

 

 

selectOne은 1개의 행만 뽑아서 오는 메소드라고 함

여태 나는 COUNT(*)과 같은 1셀(= 오직 1개의 값)만 뽑고 싶을 때 selectOne을 쓸 수 있는 줄 알았는데

Review라는 VO 객체로 1행만 뽑고 싶으므로 selectList가 아닌 selectOne을 써야 했음

 

 

 

 

Dao의 selectList를

 

 

 

selectOne으로 바꿔 줬더니 

 

 

 

코멘트가 잘 뜨는 모습이다

 

 

 

* 추가적으로 selectList를 썼을 때 단 1개의 행만 조회하더라도 어쨌든 ArrayList로 뽑았다면 [Review(~~)]와 같이 list 형식이므로 jsp에서 값을 뽑을 때는 무조건 <c:forEach>를 통해 반복문으로 뽑아야 함

 

 

 

저작자표시 비영리 변경금지 (새창열림)
'🚀 from error to study/Java' 카테고리의 다른 글
  • [Spring] form 태그를 submit 했을 때 Controller에서 alert창 띄우게끔 유도하는 2가지 방법
  • [Bootstrap] 부트스트랩 모달 열었을 때 커서 깜빡임 속성 [= focus()] 주기
  • [java] controller에서 jsp로 값을 보내지 못함
  • [Spring] Error - The method get/set필드명() is undefined for the type VO클래스
천재강쥐
천재강쥐
  • 천재강쥐
    디버거도 버거다
    천재강쥐
  • 전체
    오늘
    어제
    • Category (467)
      • 진짜 너무 궁금한데 이걸 나만 몰라...? (0)
      • 💾 Portfolio (2)
      • 🐤 CodingTest (28)
        • Java (20)
        • ᕕ(ꐦ°᷄д°᷅)ᕗ❌ (5)
      • 🚀 from error to study (142)
        • AI (1)
        • Cloud (2)
        • DB (12)
        • Front-End (16)
        • Github (14)
        • Java (39)
        • Mac (7)
        • Normal (29)
        • Server (22)
      • 📘 certificate (44)
        • 📘 리눅스마스터1급 (1)
        • 📘⭕️ 정보처리기사 (40)
        • 📘⭕️ SQLD (3)
      • 📗 self-study (234)
        • 📗 inflearn (35)
        • 📗 생활코딩 (8)
        • 📗 KH정보교육원 당산지원 (190)
      • 🎨 Scoop the others (0)
        • 📖 Peeking into other people.. (0)
        • 🇫🇷 (0)
        • 📘⭕️ 한국사능력검정시험 심화 (11)
        • 오블완 (4)
  • 인기 글

  • hELLO· Designed By정상우.v4.10.1
천재강쥐
java.lang.ClassCastException: java.util.ArrayList cannot be cast to VO 객체 경로
상단으로

티스토리툴바