MyBatisにおける#{}と${}の違いとSQLインジェクション対策
MyBatisでSQLマップを使用してクエリを実行する際、動的にパラメータを渡す必要があることがよくあります。例えば、以下のようなSQL文があります:
SELECT * FROM users WHERE user_id = #{userId} AND user_name = '${userName}'
動的SQLの解析段階において、#{ }と${ }は異なる挙動を示します:
#{ }はJDBCのプリペアドステートメント(prepared statement)のパラメー ...
6月1日 23:31 投稿