#{}和${}的区别

(1)n#{}表示一个占位符号,通过#{}可以实现preparedStatement向占位符中设置值,自动进行java类型和jdbc类型转换,#{}可以有效防止sql注入#{}可以接收简单类型值或pojo属性值。如果parameterType传输单个简单类型值,#{}括号中可以是value或其它名称。

(2)n${}表示拼接sql串,通过${}可以将parameterType传入的内容拼接在sql中且不进行jdbc类型转换,${}可以接收简单类型值或pojo属性值,如果parameterType传输单个简单类型值,${}括号中只能是value

注:
(1)简单类型就是不是自己定义的类型

(2)模糊查询:'%${value}%' 不可漏掉单引号
原文地址:https://www.cnblogs.com/mlan/p/11060388.html