본문 바로가기

Servlet&JSP

myBatis insert문 사용시 동적 sql selectKey 사용하기

반응형
myBatis insert문 사용시 동적 sql selectKey 사용하기

insert 시 조건에 따라 다른 값을 넣고자 한다면 selectKey를 이용해서 전달된 자바빈 또는 map에 원하는 값을 
지정할 수 있다.

자바빈의 프로퍼티 또는 map의 key에 값을 저장하고자 한다면 insert문을 실행하기 전에 selectKey 태그를
명시해야 하며 keyProperty에 자바빈의 프로퍼티 또는 map의 key 값을 지정해 준다.

<insert id="insert" parameterType="자바빈 또는 map">
  <selectKey keyProperty="id" resultType="int" order="BEFORE">
      <if test="num == ''">
         select board_seq.nextval from dual
      </if>
       <if test="num != ''">
         select board_seq.currval from dual
      </if>
  </selectKey>
  insert into board values (#{id},#{name})
</insert>


반응형