Notice
Recent Posts
Recent Comments
Link
연장챙겨
statement, preparedStatement 본문
-statement-
Mybatis : ${text}
JDBC : Statement statement = connection.createStatement() -> statement.executeQuery(text)
0. 정적 쿼리(static sql < literal query)
1. 문자열 그대로 쿼리실행(SQL Injection발생위험)
2. 작업마다 compile함
3. hard parsing
-preparedStatement-
Mybatis : #{text}
JDBC : PreparedStatement preparedStatement = connection.preparedStatement(text) -> preparedStatement.setString(index, text) -> preparedStatement.executeQuery()
0. 동적 쿼리(dynamic sql < binding query)
1. 바인드 변수 사용
2. 첫작업만 compile
3. 보편적으로 사용
4. soft parsing