#{}解析为sql语句时,会将形参变量取出,并自动添加引号
${}解析为sql语句时,会将形参变量取出,直接拼接显示在sql语句中
${}将形参和sql语句拼接成完整sql语句,在进行编译,会导致sql注入攻击(通过精心设计的形参变量值,改变原sql语句的使用意图,造成安全隐患)
只能使用${}
比如说在形参值表示的是字段名,表名场景下,使用#{}编译之后加引号会导致sql语句出错
map集合传key值时,必须使用${}
#{}解析为sql语句时,会将形参变量取出,并自动添加引号
${}解析为sql语句时,会将形参变量取出,直接拼接显示在sql语句中
${}将形参和sql语句拼接成完整sql语句,在进行编译,会导致sql注入攻击(通过精心设计的形参变量值,改变原sql语句的使用意图,造成安全隐患)
只能使用${}
比如说在形参值表示的是字段名,表名场景下,使用#{}编译之后加引号会导致sql语句出错
map集合传key值时,必须使用${}