Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- mysql gis
- spring
- QGIS
- 좌표변환
- 단축키
- json parser
- mysql polygon
- mybatis polygon
- Query
- shortcuts
- 파이어폭스41
- 캘리그라피
- 좌표계변환
- 쿼리
- Java
- JSON 변환
- 여행
- 엽서
- IntelliJ
- 자바
- cubrid
- 큐브리드
- 사진
- join
- JPA
- mybatis polygon mapper
- 위경도계
- 하이버네이트
- Hibernate
- mybatis
Archives
- Today
- Total
쏘댕
[MyBatis] 두테이블 정보를 한개의 모델로! Join 쿼리로 받기 본문
테이블에 매칭되는 각각의 클래스를 만들었지만,
테이블 구조와 로직 처리에 필요한 구조는 다르다.
두 테이블에 해당하는 두 클래스 중,
한 클래스가 다른 클래스를 인자로 가지고 있는 경우
JOIN으로 한개의 쿼리에 가져오고 싶다!
class는 다음과 같다.
Person.class
public class Person {
private String id;
private String name;
private int age;
private Car car;
/*
* getter/setter 생략
*/
}
Car.class
public class Car {
private String ownerId;
private String modelNo;
private String color;
/*
* getter/setter 생략
*/
}
sql mapper xml은 다음과 같다.
mapper - com.ssoniis.sample.person.xml
<resultMap type="Car" id="Car">
<result column="owner_id" property="ownerId"/>
<result column="model_no" property="modelNo"/>
<result column="color" property="color"/>
</resultMap>
<resultMap type="Person" id="Person">
<result column="id" property="id"/>
<result column="name" property="name"/>
<result column="age" property="age"/>
<collection property="car" resultMap="Car"/>
</resultMap>
<select id="selectPersonById" parameterType="String" resultMap="Person">
SELECT p.id, p.name, p.age
c.owner_id, c.model_no, c.color
FROM person p
JOIN car c
ON p.id = c.owner_id
WHERE p.id = #{id}
</select>
'공부 > Java' 카테고리의 다른 글
개인정보 마스킹처리 (휴대폰번호, 이메일) (0) | 2015.07.20 |
---|---|
[웹 시큐어 코딩] owasp-java-html-sanitizer 적용 (0) | 2015.07.10 |
Spring MVC Interceptors Example – HandlerInterceptor and HandlerInterceptorAdapter (0) | 2014.11.13 |
[MyBatis] resultMap collection (2) | 2014.07.10 |
MyBatis LIKE 검색 (0) | 2014.05.15 |
Comments