mybatis的xml文件中#{}和${}有什么区别和不同呢?

书欣 Java面经 发布时间:2022-08-07 20:43:15 阅读数:12130 1
下文笔者讲述mybatis的mapper.xml文件中#{}和${}的区别,如下所示:
#{}和${}区别:
  两者在功能上完全不同,
  ${}是字符串替换
  #{}是预处理

-----------------------------------------------------
使用#{}可以有效的防止SQL注入,提高系统安全性
-----------------------------------------------------

#{}和${}处理原理上

Mybatis处理${}时
    其原理为:将${}直接替换成变量的值
Mybatis在处理#{}时
    其原理为:对sql语句进行预处理
      将sql中的#{}替换为?号
      然后调用PreparedStatement的set方法来赋值
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202208/16598762474171.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者