1.mybatis中的#{}
一般地,#{}在mybatis中表示申明一个变量;使用#{}传参时,sql语句解析是会加上"",比如 select * from user where name = #{name} ,传入的name为zhangxing,那么最后
打印出来的sql为:
select * from user where name = ‘zhangxing’,就是会当成字符串来解析,这样相比于${}的好处是比较明显的:#{}传参能防止sql注入,如果传入的参数为 单引号',那么使用
${},这种方式是会报错的;
2..mybatis中的${}
一般地,在排序(oreder by),分组(group by)或者插入固定表及字段时,可以考虑使用${}
select * from user order by ${param}
${param} :当入参是age时, =>select * from user order by age,这时非得用${},如果用#{},
select * from user order by #{param}
#{param}:当入参是age时,=>select * from user order by 'age'