본문 바로가기

Dev/iBatis

[iBatis] 쿼리문 재사용 include

iBatis에 쿼리를 작성할 때 <sql> 태그와 <include> 태그를 통해 쿼리를 재사용 할 수 있습니다.

상황에 따라 편하게 사용할 수 있을 것 같습니다.

SqlMap.xml에 여러 <statement>에 공통적으로 적용되는 내용이 있을 때.

예를 들어 조회쿼리 시 paging 처리 시 관련 조건이라던 지 [등록일시], [등록자], [수정일시], [수정자]와 같은 시스템 공통 컬럼에 대한 정보와 같이 여러 쿼리에 동일하게 적용되어야 하는 부분일 경우 분할 후 하나로 관리하게 되면 관리에 이점이 있을 것으로 생각됩니다.

 

SqlMap에 <sql>태그를 이용하여 공통으로 사용할 쿼리의 내용을 작성합니다.

<sql id = "systemCommon">

, SYS_REG_EMP_NO

, SYS_REG_DT

, SYS_CHG_EMP_NO

, SYS_CHG_DT

</sql>

 

그리고 사용될 쿼리에 위에 공통으로 작성한 <sql>태그를 <include>태그로 삽입 후 refid로 참조하면 됩니다.

<select id="selectInfo" resultClass="map" parameterClass="map">

SELECT

  BOARD_NO

, BOARD_TITLE

, BOARD_DESC

<include refid="systemCommon"/>

</select>

 

'Dev > iBatis' 카테고리의 다른 글

[iBatis] iterate 동적 파라메터  (0) 2019.05.10
[iBatis] insert(), update(), delete() 리턴값  (0) 2019.05.10