resultMap 의 collection 집합 두 가지 실현 방식
3273 단어 자바
원 소 를 모 아서 한 쌍 이 많은 관 계 를 처리 하 다.매 핑 된 자바 실체 류 의 속성,속성의 자바 Type(일반적으로 ArrayList)을 지정 해 야 합 니 다.목록 에 있 는 대상 의 유형 of Type(자바 실체 클래스);대응 하 는 데이터베이스 테이블 의 열 이름;상황 에 따라 MyBatis 가 집합 을 어떻게 불 러 오 는 지 알려 줘 야 합 니 다.MyBatis 는 두 가지 방식 으로 불 러 올 수 있 습 니 다:
select:다른 맵 의 SQL 문 구 를 실행 하여 자바 실체 형식 을 되 돌려 줍 니 다.유연 하지만 여러 번 포 함 된 SQL 문 구 를 실행 합 니 다.
resultMap:join 조회 결과 집합 을 통 해 자바 실체 형식 으로 매 핑 하 는 데 포 함 된 결과 매 핑 을 사용 합 니 다.
두 가지 로 딩 방식 의 형식 은 다음 과 같 습 니 다.집합 적 인 내장 조회(select)SQL 구문 SELECT i.isocname extIsocName, i.isoc_logo extCommentUserNo, ic.comment_id, ic.comment_praise_num, ic.comment_dt, ic.comment_content FROM isoc i, isoc_comment ic WHERE i.isoc_id = ic.comment_isoc_id AND ic.comment_user_id = #{2} LIMIT #{0},#{1} select comment_photo_url from isoc_comment_photo where comment_id = #{comment_id}주의:column 속성의 값 은 해당 SQL 조회 문장의 열 이름과 같 아야 합 니 다.MyBatis 는 첫 번 째 SQL 문 구 를 조회 한 이 열의 값 을 끼 워 넣 은 SQL 맵 문 구 를 입력 하 는 데 사용 합 니 다.첫 번 째 SQL 문 구 를 조회 한 모든 열의 값 은 다른 SQL 문 구 를 실행 하 는 데 사 용 될 것 이기 때문에 포 함 된 SQL 문 구 는 여러 번 실 행 될 것 입 니 다.
집합 결과(resultMap)
…
SELECT
u.id as user_id,
u.name as user_name,
u.create_date,
r.id as role_id,
r.name as role_name
FROM t_user u
LEFT JOIN t_user_role ur ON(u.id=ur.user_id)
LEFT JOIN t_role r ON(r.id=ur.role_id) where u.id=1
메모:column 속성의 값 은 해당 SQL 조회 문장의 열 이름과 같 아야 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.