在SQL中引用这些参数的时候,可以使用两种方式#{parameterName}或者${parameterName}。
#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。#方式能够很大程度防止sql注入,$方式无法防止Sql注入。
例如:order by #{parameterName} //或取Map中的value#{Key}也是一样操作。
假设传入参数是“Smith”
会解析成:order by “Smith”
· ${}
将 传 入 的 数 据 直 接 显 示 生 成 在 s q l 中 。 将传入的数据直接显示生成在sql中。 将传入的数据直接显示生成在sql中。方式一般用于传入数据库对象,例如传入表名。
例如:order by #{parameterName} //或取Map中的value#{Key}也是一样操作。
假设传入参数是“Smith”
会解析成:order by Smith