XML1 [MyBatis] #{} 와 ${} 차이점 마이바티스(MyBatis)를 사용하는 프로젝트에서 mapper 쿼리문이 담긴 XML 파일을 보면 달러($) 기호를 또는 샾(#) 기호를 쉽게 찾을 수 있다. 이처럼 XML에 쿼리문을 작성할 때 파라미터 값을 설정하게 될텐데, 이때 ${}과 #{}를 사용하게 된다. 그런데 이 둘은 용도가 다르기 때문에 명확히 구분해서 사용해야 한다. 어떤 차이점이 있는지 알아보자. #{} → '값' # - PreparedStatement를 의미합니다. - 파라미터가 String 형태로 들어와 자동적으로 '파라미터' 형태가 된다. 예를들어, #{id}의 id의 값이 abc라면 쿼리문에는 id = 'abc'의 형태가 된다. - 쿼리 주입을 예방할 수 있어 보안측면에서 유리하다. - DB에서 변수를 바인드를 하여 ID값이 달라.. 2022. 3. 9. 이전 1 다음 728x90