티스토리 뷰

기타

CDATA란?

JxxxxH 2024. 7. 10. 15:34

xml파일에 sql쿼리문에 '<='를 넣었더니 오류가 났다.

<![CDATA[

쿼리 내용

]]>

 

CDATA 안에 쿼리를 사용하면 쿼리 내용의 괄호나 특수문자를 XML parser 인식하지 않고

"문자열" 인식한다.

 


CDATA는 Character Data(문자 데이터)의 약자로, 마크업 언어(XML)에서 데이터를 표시하기 위한 것입니다.

특수문자들을 태그가 아니라 데이터로 명시하고 싶을 때 사용합니다. 보통 XML 파일에서 쿼리 짤 때 많이 사용합니다.

이미 정의된 &lt&gt&amp 등을 사용할 수도 있지만 가독성을 너무나 해치기 때문에 CDATA를 이용하는 것이 가독성에도 훨씬 좋습니다.

<select id="selectBestProducts" resultType="map">
	     <![CDATA[
		    SELECT t.PROD_ID, t.PROD_NAME, t.PROD_PRICE, t.TOTAL, t.MEMBER_ID, m.BRAND
		    FROM (
		        SELECT p.PROD_ID, p.PROD_NAME, p.PROD_PRICE, s.TOTAL, p.MEMBER_ID
		        FROM SELL_PROD_STOCK s
		        JOIN PROD p ON s.PROD_ID = p.PROD_ID
		        WHERE s.TOTAL IS NOT NULL
		        ORDER BY s.TOTAL DESC
		    ) t
		    JOIN MEMBER m ON t.MEMBER_ID = m.MEMBER_ID
		    WHERE ROWNUM <= 16
	    ]]>
</select>

<select id="selectBestProducts" resultType="map">

		    SELECT t*
		    FROM MEMBER
		    WHERE ROWNUM <![CDATA[<=]]> 16    
</select>

 

참고:

https://java119.tistory.com/70

'기타' 카테고리의 다른 글

[VSCode]자동으로 jsx format으로 변환되는 방법  (0) 2023.03.16
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/09   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함