文章目录
引言
在MyBatis中,使用@Select注解进行查询操作时,参数的传递方式取决于SQL语句中的占位符。
@Select
的参数传递
${value}
将会被传递的参数值直接替换,如果参数是用户输入,这可能导致SQL注入问题。因此,尽量避免使用${},除非你完全控制变量的内容。
- 使用条件构造器作为参数 (wrapper自定义sql)
在自定义 SQL 时,传递 Wrapper 对象作为参数时,参数名必须为 ew,或者使用注解 @Param(Constants.WRAPPER) 明确指定参数为 Wrapper 对象。
I @Select的参数传递
1.1 普通类型传递
MyBatis支持使用#{}
和${}
两种占位符,其中