본문 바로가기

개발관련

Mysql) Mybatis 동적 태그

반응형

http://www.mybatis.org/mybatis-3/ko/dynamic-sql.html

 

MyBatis – 마이바티스 3 | 동적 SQL

동적 SQL 마이바티스의 가장 강력한 기능 중 하나는 동적 SQL을 처리하는 방법이다. JDBC나 다른 유사한 프레임워크를 사용해본 경험이 있다면 동적으로 SQL 을 구성하는 것이 얼마나 힘든 작업인지 이해할 것이다. 간혹 공백이나 콤마를 붙이는 것을 잊어본 적도 있을 것이다. 동적 SQL 은 그만큼 어려운 것이다. 동적 SQL 을 사용하는 것은 결코 파티가 될 수 없을 것이다. 마이바티스는 강력한 동적 SQL 언어로 이 상황은 개선한다. 동적 SQL 엘

www.mybatis.org

 

만약에 쿼리에 조건문이 들어가는데 맨 첫번째의 조건문을 WHERE로 자동 치환 시키고 싶다면 아래와 같이 가능하다.

 

<trim prefix="WHERE" prefixOverrides="AND |OR ">

     <if test="name != null">

          AND name = #{name}

     </if>

     <if test="gender != null">

          AND gender = #{gender}

     </if>

     <if test="age != null">

          AND age = #{age}

     </if>

     <if test="phone != null">

          AND phone = #{phone}

     </if>

</trim>

 

위 쿼리문에서 만약 name이 null이여서 gender가 첫번째 조건문이 된다면,

AND gender = #{gender}의 AND가 WHERE로 치환되어서 쿼리가 만들어지게 된다.

반응형