MyBatis : include refid란? (사용법)

손유라·2023년 11월 13일
0

회사 유지보수 업무 중 다른 사람이 짠 쿼리를 보게 되었다.
그 전에는 사실 보고도 지나가고, 보고도 지나가다가 오늘은 한 번 이게 뭔지 검색해 보자! 하고 도전.

내가 봤던 쿼리의 경우에는 아래처럼 들어가 있었다.

SELECT * 
FROM animal
WHERE name == '호랑이'
AND
<include refid="search"/>

그래서 검색을 해 보니, 자주 쓰는 중복 쿼리를 하나로 묶어서 모아주는 역할! 즉, 반복적인 SQL문을 방지하기 위해 만들어진 태그였다.

그래서 저 search 라는 곳이 가리키는 곳을 찾기 시작했다.

<sql id="search">
	AND age IN (1, 2, 3, 4)
</sql>

이런 형태의 sql 태그가 있었고, 그 태그에 들어있는 조건은 실제로 우리 회사의 프로젝트에서 자주 사용되는 조회 조건이었다.

아예 이런 태그는 처음 봤는데, 전에 계시던 분은 효율적으로 잘 사용하고 계셨구나... 나도 mybatis를 사용해 중복 쿼리를 적용해 볼 일이 생긴다면 꼭 한 번 사용해 봐야겠다.

profile
유라라랜드에 오신 것을 환영합니다!

0개의 댓글

관련 채용 정보