USER_NM = 홍길동이 담겨있다면,
$의 경우 ''(쿼테이션마크) 없이 글자 그대로 들어간다.
<select id="getName" parameterType="HashMap" resultType = "HashMap">
SELECT *
FROM USER
WHERE USER_NM IN ($USER_NM$)
</select>
SELECT *
FROM USER
WHERE USER_NM IN (홍길동)
#의 경우 파라미터가 String 형태로 들어와 자동으로 ''(쿼테이션마크)가 붙는다.
쿼리주입을 예방할 수 있어 보안 측면에서 유리하다.
<select id="getName" parameterType="HashMap" resultType = "HashMap">
SELECT *
FROM USER
WHERE USER_NM IN (#USER_NM#)
</select>
SELECT *
FROM USER
WHERE USER_NM IN ('홍길동')
'Struts2 + iBatis' 카테고리의 다른 글
[iBatis/MyBatis에러] Caused by: org.xml.sax.SAXParseException: Element type "if" must be declared. (0) | 2020.11.08 |
---|---|
Interceptor (미) (0) | 2019.10.22 |