您的位置:首页 > 其它

Mybatis参数获取时$与#的区别

2018-03-06 15:33 211 查看
主要对mybatis参数值=获取方式#与$做一个简单的总结,如果有疑问自己写段Demo测试,效果比这个估计要好太多。    在mybatis中#与$获取参数区别:    #{},相当于一个占位符,可以防止SQL注入的问题    ${},用于字符拼接    在使用上能用#,就用#这种方式。
    使用#的方式:                            如果参数是字符类型,那么在取值的时候会给参数加上双引号。                            参数String a = "hello";  #{a} ---->"hello";                            如果参数是基本类型,那么在取值的时候会原样获取,参数的值可以是任意值。                            如果参数是对象类型,那么取值时使用OGNL表达式获取。
    
   使用$的方式:                          如果参数基本类型,${value} ,value必须是值。                          如果参数是字符类型非字符,原样获取,不会为其加上双引号。                          如果参数是pojo(对象类型),使用OGNL(对象导航图语言)获取值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: