본문 바로가기

개발중/Spring

MyBatis 에서 '#'과 '$'의 차이

728x90
반응형

 '#'과 '$'의 차이

#

  • 파라메터가 String 형태로 들어와 자동적으로 '파라메터' 형태가 된다.
  • 예를 들어, #{name} 의 name 값이 soobin 이라면  name = 'soobin' 형태가 된다.
  • 쿼리 주입을 예방할 수 있어 보안 측면에 유리하다.

$

  • 파라메터가 바로 출력된다.
  • 해당 컬럼에 자료형에 따라서 자료형이 변경 된다.
  • 쿼리 주입을 예방할 수 없어 보안 측면에서 불리하다. 그러므로, 사용자의 입력을 전달 할 때는 사용하지 않는 편이 낫다.
  • 테이블이나 컬럼명을 파라메터로 전달하고 싶을 때 사용한다. 

 

 

 

 

728x90
반응형

'개발중 > Spring' 카테고리의 다른 글

web.xml, root-context.xml, servlet.xml 차이점  (0) 2021.01.05
$(document).ready() 와 $(window).load() 차이  (0) 2021.01.05
자바 퍼시스턴스 API, JPA  (0) 2021.01.05
JSTL  (0) 2021.01.05
차트 만들기  (0) 2020.11.18