MyBatis 模糊查询 防止Sql注入
#{xxx},使用的是PreparedStatement,会有类型转换,所以比较安全;${xxx},使用字符串拼接,可以SQL注入;like查询不小心会有漏动,正确写法如下:Mysql: select * from t_user where name like concat('%', #{name}, '%')Oracle: selec
·
#{xxx},使用的是PreparedStatement,会有类型转换,所以比较安全;
${xxx},使用字符串拼接,可以SQL注入;
like查询不小心会有漏洞,正确写法如下:
Mysql:
select * from t_user where name like concat('%', #{name}, '%')
Oracle:
select * from t_user where name like '%' || #{name} || '%'
SQLServer:
select * from t_user where name like '%' + #{name} + '%'
更多推荐
已为社区贡献1条内容
所有评论(0)