Column 1 | Column 2 | Column 3 | Column 4 |
---|---|---|---|
No 1 | 2 | 3 | 3 |
No 1 | 3 | 4 | 5 |
No 2 | a | a | a |
No 2 | b | b | b |
여기에서 No 1 값만 가져온다고 가정하면 내가 출력한 쿼리문은
Column 1 | Column 2 | Column 3 | Column 4 |
---|---|---|---|
No 1 | 2 | 3 | 3 |
No 1 | 3 | 4 | 5 |
이런결과를 준다, 이것을 보통 selectList("id명",전달값)
으로 받아오지만 selectOne("id명",전달값)
으로 받을수있다.
SQL.xml에서 resultMap을 만들어준다.
<!-- 상세 정보 불러오기를 위한 resultMap -->
<resultMap id="아이디" type="VO">
<id property="column1" column="Column 1" />
<collection property="List" ofType="listVO">
<result property="column2" column="Column 2" />
<result property="column3" column="Column 3" />
<result property="column4" column="Column 4" />
</collection>
</resultMap>
public class VO {
private String column1;
private List<ListVO> listVO;
//gettersetter 생략
}
public class ListVO {
private String column2;
private String column3;
private String column4;
//gettersetter 생략
}
* typeAlias에 type, ofType class등록할것
그렇게 되면 컬럼 2,3,4는 List로 처리되기 때문에 JSTL에서 불러올때
<c:forEach items="${VO.listVO}" var="result">
를 이용하여 column2,3,4만을 반복문으로 사용할수 있다.