
MyBatis는 Java 객체와 SQL문 사이의 자동 매핑을 지원하는 ORM 프레임워크이다. 이를 통해 개발자는 SQL 쿼리를 직접 작성하지 않고도 객체를 더 쉽게 다룰 수 있다는 장점이 있는데 MyBatis에서는 SQL쿼리를 작성할 때, #과 $를 사용할 수 있다. #을 사용한 경우 : SQL쿼리에 사용될 파라미터를 전처리한다. 이를 통해 SQL Injection 공격을 방지할 수 있다. 또한 자동으로 파라미터의 타입 변환이 이루어지는데 예를 들어, #{name}과 같이 사용하면, 자동으로 String 타입의 name을 인식하여 적절한 형태로 SQL문에 삽입 된다. $을 사용한 경우 : SQL쿼리에 그대로 파라미터를 삽입한다. 전처리 과정을 거치지 않기 때문에 SQL Injection 공격에 취약하다...