Mybatis参数获取时$与#的区别
2018-03-06 15:33
211 查看
主要对mybatis参数值=获取方式#与$做一个简单的总结,如果有疑问自己写段Demo测试,效果比这个估计要好太多。 在mybatis中#与$获取参数区别: #{},相当于一个占位符,可以防止SQL注入的问题 ${},用于字符拼接 在使用上能用#,就用#这种方式。
使用#的方式: 如果参数是字符类型,那么在取值的时候会给参数加上双引号。 参数String a = "hello"; #{a} ---->"hello"; 如果参数是基本类型,那么在取值的时候会原样获取,参数的值可以是任意值。 如果参数是对象类型,那么取值时使用OGNL表达式获取。
使用$的方式: 如果参数基本类型,${value} ,value必须是值。 如果参数是字符类型非字符,原样获取,不会为其加上双引号。 如果参数是pojo(对象类型),使用OGNL(对象导航图语言)获取值。
使用#的方式: 如果参数是字符类型,那么在取值的时候会给参数加上双引号。 参数String a = "hello"; #{a} ---->"hello"; 如果参数是基本类型,那么在取值的时候会原样获取,参数的值可以是任意值。 如果参数是对象类型,那么取值时使用OGNL表达式获取。
使用$的方式: 如果参数基本类型,${value} ,value必须是值。 如果参数是字符类型非字符,原样获取,不会为其加上双引号。 如果参数是pojo(对象类型),使用OGNL(对象导航图语言)获取值。
相关文章推荐
- 12、Mybatis中用#{}和${}获取输入参数的区别
- Mybatis # $写参数时候的区别
- Mybatis 获取不到接口参数问题
- SpringMVC和Mybatis(二)参数绑定、和Struts区别
- service和doXX方法区别、Http请求头案例、获取请求的传递参数
- ParameterizedType getGenericSuperclass 获取泛型参数;class getClass区别
- 【Mybatis】MyBatis调用带有返回结果、output参数的存储过程上与ibatis的区别
- MyBatis调用带有返回结果、output参数的存储过程上与ibatis的区别
- beego中路由(Router)参数和表单(Form)参数的区别和获取
- MyBatis排序时使用order by 动态参数时需要注意,用$而不是#, #{}和${}的区别以及order by注入问题
- mybatis 多个参数传递获取,基础教程
- MyBatis教程之三多参数的获取方式
- Mybatis 参数无法获取Parameter not found
- 2017_11_28 mybatis多参数传入,以及#,$的区别
- Mybatis传递单个参数(string)时,获取参数失败
- get、post获取参数的区别
- mybatis 取传进来的参数 mybatis #{ } ${ }区别是啥?
- Mybatis:传入参数方式以及#{}与${}的区别
- Mybatis框架中Mapper文件传值参数获取。【Mybatis】
- mybatis两种接收参数的方式#{args}和${args}的区别小知识