1、#{}
1.1、使用预编译的语句,即底层使用JDBC的PreparedStatement占位符?
1.2、可以防止sql注入
2、${}
2.1、底层使用Statement ,字符串拼接。可能会有SQL注入。
2.2、写在${}里面的内容必须有get方法
2.3、如果${数字} 认为这个位置就是数字
2.4、${} 适用于参数是对象
3、总结
从上边可以看出这两种方式的区别,在开发中能用#{}则用,因为它可以防止sql注入,且是预编译的,只有在需要原样输出时才使用${}。
1.1、使用预编译的语句,即底层使用JDBC的PreparedStatement占位符?
1.2、可以防止sql注入
2.1、底层使用Statement ,字符串拼接。可能会有SQL注入。
2.2、写在${}里面的内容必须有get方法
2.3、如果${数字} 认为这个位置就是数字
2.4、${} 适用于参数是对象
从上边可以看出这两种方式的区别,在开发中能用#{}则用,因为它可以防止sql注入,且是预编译的,只有在需要原样输出时才使用${}。