본문 바로가기
728x90
반응형

iBATIS3

MyBatis 반복문(foreach) + String[] 배열(array) / iBatis 반복문(iterate) + 동적 쿼리(dynamic) myBatis 와 iBatis 의 반복문은 크게 다르진 않다. **open="(" : 반복시 '('로 시작​close=")" : 반복시 ')'로 끝남prepend : 'WHERE' 과 같이 iterate 문 앞에 첨가 *** myBatis 1234567 DELETE FROM ${TABLENAME} WHERE ID = #{item} Colored by Color Scriptercs collection : 전달받은 인자값 이름(변수 이름) item : foreach 문 안에서 사용할 매개변수 이름 separator : foreach 문이 한번 돌고 다음번 돌때의 구분자 * 배열을 파라미터로 받을때collection 에 꼭! array 로!! 12345678910String[] 배열이름; SELECT * FR.. 2017. 12. 28.
[iBatis] 동적 컬럼 명, 테이블 명 설정 VO 에 있는 값을 넘겨받아 sql 쿼리로 사용할 경우, 테이블 명에 #을 붙여주면 에러가 발생하고 칼럼 명에 붙이면 데이터가 나오지 않는다. SELECT ? FROM LP_PA_CBNDParameters: [PNU] $을 사용하면 값이 들어간 형태로 쿼리문이 만들어지기 때문에 '' 가 붙지 않는다. 반면 #을 사용하면 쿼리에서 '?' 형태로 파라미터를 받기 대문에 String 형으로 '' 가 붙게된다. *** 해결방법 칼럼명 or 테이블명이 동적으로 바뀔땐 $를 붙여준다. 123456 SELECT #CODE# FROM $TABLE_NM$​ Colored by Color Scriptercs 2017. 12. 19.
[iBatis] 쿼리문 내 부등호 사용 쿼리문 내에 부등호를 사용해야 할 때....! sqldeveloper나 tbadmin 같은 툴에서는 문제가 되지 않지만 웹프로젝트 내 xml 에서는 오류가 난다. *** 해결방법 1SELECT #CODE# FROM LP_PA_CBND CDATA[ ]]> 로 감싸준다!​ 2017. 12. 19.
728x90
반응형