엄청난 기초긴 하지만..
Mybatis에서 비교연산자를 사용하면 흔히 만나는 오류이다.
뭔소리나면...Mybatis에서 사용하는 쿼리문은 xml로 이루어져있다. 따라서 비교연산자에서 사용되는 꺽쇠표시가 표현되게 되면은 텍스트라인 파싱 오류가 나게 된다.
주로 보는 오류 라인이 2가지 정도 이다.
1. The content of elements must consist of well-formed character data or markup.
2. 변수 is not correctly spelled
그래서 xml로 이루어진 파일에서 비교연산자를 사용하려면 CDATA 표기를 통해서 해당 내용이 단순한 문자임을 알려 주어야 한다.
CDATA의 뜻은 '(Unparsed) Character Data' 이다.
즉, '(파싱하지 않는) 문자 데이터'를 의미한다.
해당 방법을 통해서 방금 오류가난 부분을 수정하면,
<select id='testSelect' parameterType="hashMap" resultType="hashMap">
select * from test
<![CDATA[
where study_day >= #{parameter}
and study_day <= #{parameter}
]]>
</select>
기본과 기초!
잊지말자~
반응형
'Spring framework' 카테고리의 다른 글
* 위 에니메이션은 Html의 캔버스(canvas)기반으로 동작하는 기능 입니다. Html 캔버스 튜토리얼 도 한번 살펴보세요~ :)
* 직접 만든 Html 캔버스 애니메이션 도 한번 살펴보세요~ :)
댓글