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

열심인 참새님의 프로필 이미지
열심인 참새

작성한 질문수

스프링 프레임워크는 내 손에 [스프1탄]

68.JOIN(조인)하여 회원정보 가져오기

선생님 68강 관련해서 질문 있어요~! 부탁드리겠습니다~

작성

·

460

·

수정됨

0

선생님께서 알려주신대로 하였고(resultMap) 문제없이 잘 작동하였습니다!~ 오류가 생겨서 질문드리는게 아니오라...

관련된 개념이 궁금해서 질문드려요~!

컨트롤러에서 Member mvo = memberMapper.getMember(m.getMemID());

이렇게 가져올 때 상황이에요~


▲위 테이블은 mem_stbl 테이블이고,
▲그 아래 테이블은 mem_auth 테이블이에요~

▲여기서 이렇게 resultType="kr.board.entity.Member"으로
가져올 수 없는 이유를 잘 모르겠어요
sql 테이블이 매퍼.xml 파일에서
select * from mem_stbl mem LEFT OUTER JOIN mem_auth auth on mem.memID=auth.memID where mem.memID= '질문';
이렇게 합쳐지고 그 결과 테이블이
이것 인데요~

<▼두서가 길었는데요! 질문의 핵심입니다!▼>
Member 클래스의 멤버 변수에 넣지 못하는 이유가
결과 집합의 행이 2개여서 그런 건가요?
그래서 reseltMap을 써주는 것인가요??

만약 그렇다면 1행으로 만들어준다면(회원 가입 시 체크박스 1개를 선택한다면) resultMap을 사용하지 않고 resultType="kr.board.entity.Member"
로 해줘도 괜찮은 건가요?
부탁드리겠습니다!

아예 잘못 알고 있는 걸까요? ㅠ

------------------


선생님 강의 최고입니다! 애청자에요 하하하ㅎㅎ

답변 1

0

박매일님의 프로필 이미지
박매일
지식공유자

음 질문하신 부분에서 parameterType은 #{ } 이부분을 설정할때 사용하는 거구요 데이터를 가져올때는 resultType이나 resultMap을 사용합니다. 혹시 resultType이나 resultMap을 질문하신 건지요?

네 resultType이에요 잘못 적었습니다 ㅠ 수정했습니다!

선생님 계속 찾아봤는데요~
join 했을 때 memberId 컬럼이 두 개여서 중복되므로 resultType =kr.board.entity.Member 으로 못받는 거 같아요!
혹시 옳은 정답을 찾은걸까요???

혹시 매퍼.xml을 resultMap으로 하는 것이 아니라 Member와 authVO의 클래스를 수정하는 것으로 받는 방법은 없을까요?

+++

회원 가입시에 컨트롤러에서 "" 값 잡아줄 때 권한은 size() == "" 가 아닌 null으로 하였습니다~~
체크박스 미선택 시 null을 반환한다고 하더라구요~~!
image

열심인 참새님의 프로필 이미지
열심인 참새

작성한 질문수

질문하기