mapper中注解SQL模糊查询需要注意的问题

简介: 取值使用$参数前面加@Param注解,内容是server调用时候传参的名称。
@Select("select * from product where pname like '%${word}%'")
  List<Product> search(@Param("word") String word);

取值使用$

参数前面加@Param注解,内容是server调用时候传参的名称。

但是众所周知,使用${}获取字段值存在sql注入风险

还是换成下面这种写法比较安全

1.@Select("<script>
<bind name="wordLike" value="'%' + word + '%'" />
select * from product where pname like #{wordLike}
</script>")
  List<Product> search(@Param("word") String word);
相关文章
|
2月前
|
SQL
sql server模糊查询、分组
sql server模糊查询、分组
|
9月前
|
SQL Java 数据库连接
MyBatis进阶:掌握MyBatis动态SQL与模糊查询、结果映射
MyBatis进阶:掌握MyBatis动态SQL与模糊查询、结果映射
250 0
|
9月前
|
SQL XML Java
Mybatis系列(二)之动态SQL和模糊查询
Mybatis系列(二)之动态SQL和模糊查询
|
9月前
|
SQL XML Java
Mybatis:SQL注入问题 like模糊查询 多表查询 动态SQL
Mybatis:SQL注入问题 like模糊查询 多表查询 动态SQL
149 0
|
12天前
|
SQL Java 数据库连接
2万字实操案例之在Springboot框架下基于注解用Mybatis开发实现基础操作MySQL之预编译SQL主键返回增删改查
2万字实操案例之在Springboot框架下基于注解用Mybatis开发实现基础操作MySQL之预编译SQL主键返回增删改查
23 2
|
10月前
|
SQL Java 数据库连接
MyBatis进阶:掌握MyBatis动态SQL与模糊查询、结果映射,让你在面试中脱颖而出!!
MyBatis进阶:掌握MyBatis动态SQL与模糊查询、结果映射,让你在面试中脱颖而出!!
163 0
|
11月前
java202304java学习笔记第六十七天-ssm-动态sql-常用注解小结
java202304java学习笔记第六十七天-ssm-动态sql-常用注解小结
25 0
|
11月前
java202304java学习笔记第六十七天-ssm-动态sql-一对一得注解2
java202304java学习笔记第六十七天-ssm-动态sql-一对一得注解2
32 0
|
2月前
|
SQL Java 数据库连接
【Java调试】通过SqlSessionFactory类对象获取mapper文件内的动态SQL在执行时的完整SQL及参数(2种使用方法+测试Demo及结果)
【Java调试】通过SqlSessionFactory类对象获取mapper文件内的动态SQL在执行时的完整SQL及参数(2种使用方法+测试Demo及结果)
78 0
|
8月前
|
SQL Java 数据库连接
你不能不知道的Mydatis扩展:动态sql以及模糊查询,结果映射!
你不能不知道的Mydatis扩展:动态sql以及模糊查询,结果映射!