나는
<update id="updateSortOrderData" >
처럼 parameterType을 아예 사용하지 않을 예정..
해당사항이 문제가 생긴다면 아래와 같은 조치를 해야됨
원문 : http://www.cyworld.com/soongyoblog/9581741
일반적으로 삭제 처리할 경우 아래와 같이 사용한다.
<delete id="deleteDataById" parameterType="string">
DELETE
FROM
tableName
WHERE
id = #{ids}
</delete>
그래서 난 멀티 행을 삭제하기 위해 아래와 같이 사용 했다. ${xx}를 이용하여.
<delete id="deleteDataByIds" parameterType="string">
DELETE
FROM
tableName
WHERE
id IN (${ids})
</delete>
위와 같이 문제 없어 보이는 구문을 작성 후 테스트 해보니 에러! 두둥!
검색해 보니 ${} 표현식을 사용할 경우에는 Map을 parameterType으로 던져 주어야 한다고 한다.
db 바꿔서 처리 해보니 문제 해결
'프로그램 > JAVA' 카테고리의 다른 글
인터페이스의 필드는 static final이다. (0) | 2011.12.06 |
---|---|
싱글톤 패턴에서 DCL을 쓰면 안돼는 이유 (0) | 2011.12.06 |