本文共 573 字,大约阅读时间需要 1 分钟。
#{}:可以获取map中的值或者pojo对象属性的值; ${}:可以获取map中的值或者pojo对象属性的值;
select * from employee where id=${id} and last_name=#{lastName}select * from ${tableName} where id=${id} and lastName=#{lastName}
Preparing: select * from employee where id=1 and last_name=?
Preparing: select * from employee where id=1 and lastName=? 上述两行都从控制台取出区别:
#{}:是以预编译的形式,将参数设置到sql语句中;PreparedStatement;防止sql注入 ${}:取出的值直接拼装在sql语句中;会有安全问题; 大多情况下,我们去参数的值都应该去使用#{};原生jdbc不支持占位符的地方我们就可以使用${}进行取值 比如分表、排序。。。;按照年份分表拆分 select * from ${year}_salary where xxx; select * from tbl_employee order by ${f_name} ${order}
转载地址:http://mqqq.baihongyu.com/