Mybatis中#{}与&{}的区别

Posted 木易yang~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis中#{}与&{}的区别相关的知识,希望对你有一定的参考价值。

一、#{}表示一个占位符号

  主要有以下几点功能:

  • 通过#{}可以实现preparedStatement向占位符中设置值,自动进行Java类型和jdbc类型转换
  • #{}可以有效的防止SQL注入
  • #{}可以接收建磊类型值或者pojo属性值
  • 如果parameterType传给单个简单类型值,#{}括号中可以是value或其他名称

二、${}表示拼接SQL串

  • 通过${}可以将parameterType传入的内容拼接在SQL中而不进行jdbc类型转换
  • ${}可以接收简单类型值或pojo属性值,如果parameterType传输单个简单类型值,${}中只能是value

以上是关于Mybatis中#{}与&{}的区别的主要内容,如果未能解决你的问题,请参考以下文章

mybatis&Hibernate区别

mybatis 中#与$的区别

mybatis 中 $ 与 # 的区别

mybatis与hibernate的区别

mybatis 中#与$的区别

[转]MyBatis中resultType与resultMap区别