paremter 명시 안해줘도 되는게 신기함

 

 

 

Integer[] intArr = new Integer[10];

 

for (int i = 0; i < 10; i++) {

 

intArr[i] = i;

 

}

 

 

<delete id="deleteTest_hasArray" >

 

DELETE 

 

FROM TABLE_NAME 

 

<iterate prepend="WHERE seq IN" open="(" close=")"  conjunction="," >

 

#[]#

 

</iterate> 

 

</delete>

 

 

 

//

 

그냥 이렇게 썼음

 

 

BeanClass

 

int seq;

 

String str;

 

 

setter/getter...

 

 

for (int i = 0; i < 10; i++) {

 

beanClass = new BeanClass();

 

beanClass.setSeq(i);

 

beanClass.setStr("test");

 

list.add(beanClass);

 

}

 

 

<insert id="insertTest_hasCollectionList" parameterClass="java.util.List">

 

INSERT INTO TABLE_NAME

 

(seq, str)

 

VALUES

 

<iterate conjunction=" , " >

 

   (#[].seq , #[].str#)

 

</iterate>

 

<selectKey resultClass="int">

 

SELECT LAST_INSERT_ID();

 

</selectKey>

 

</insert>

 

 

 

//

 

맵으로 넘기기 맵안에는 리스트도 있음

 

스트링도 있음

 

이렇게 하니 됨ㅋ

 

List<BeanClass> list = new ArrayList<BeanClass>();

 

Map<String, Object> map = new HashMap<String, Object>();

 

 

String superId = 10;

 

 

for (int i = 0; i < 10; i++) {

 

beanClass = new BeanClass();

 

beanClass.setSeq(i);

 

list.add(beanClass);

 

}

 

map.put("testSuperId", superId);

 

map.put("testList", list);

 

 

<delete id="deleteTest_hasCollectionMap" parameterClass="java.util.Map">

 

DELETE 

 

FROM TABLE_NAME

 

WHERE 

 

parentId = #testSuperId# 

 

<iterate property="testList" prepend="AND strId IN" open="(" close=")"  conjunction="," >

 

#testList[].getSeq#

 

</iterate> 

 

</delete>


'IT노트 > iBatis' 카테고리의 다른 글

ibatis JSON 연동  (0) 2015.02.24
IN 사용 방법 중 하나  (0) 2015.02.02
[iBatis] like문, escape문자, <![CDATA[ ]]>  (0) 2015.02.02
mybatis selectKey 사용  (0) 2015.02.02
Ibatis 동적 테이블명  (0) 2015.02.02
Posted by wychoi
,