须知:${}和#{}区别
-
${}为早期使用的,不能防止sql注入。
-
#{}为现在使用的,是可以防止sql注入。
-
能尽量使用#{}则使用#{},少使用${}。
注意点描述:
我们如果在xml中动态指定表名时,以#{}方式获取,那么sql语句中的表名会有引号,会报出sql错误。
我们可以添加一个如下所示的参数来去掉#{}带来的引号
其参数的说明可以参考下面内容
如果我们使用了上述方法,那么我们就不能使用#{}了,只能使用${}方式,不然无法进行参数拼接。
${xxxx}:$将传入的数据直接显示生成在sql中,对于字符串数据,需要手动加上引号。
这时,如果我们还进行了其他传参,那么我们还需要进行其他处理,其具体的操作可以参考以下链接:
若上述记录有误,欢迎指出,一起学习。