将#{} 改为${}
请求参数:
原SQL
运行结果:
修改后:
成功:
#{}和${}区别:
1、#{}表示一个占位符,能够实现PreparedStatement向占位符中设置值,自动进行java类型和jdbc类型的转换,防止SQL注入。
2、接收简单数据类型的数据或者pojo属性值(javabean)
3、使用#{}作为占位符时,如果接收的实参是基本数据类型,可以使用任意名称来接收,包括使用value名称接收
1、${}表示拼接SQL字符串,将PreparedStatement传入的数据拼接到SQL语句中,不会进行jdbc类型转换,
2、接收简单数据类型的数据或者pojo属性值(javabean)
3、当使用${}作为字符串连接时,当前接收实参的变量名称只能使用value,${value}