开发者社区> 问答> 正文

mybatis中${value}与#{} 的区别是什么?

mybatis中${value}与#{} 的区别是什么?

展开
收起
游客pklijor6gytpx 2019-12-04 14:13:11 2286 0
2 条回答
写回答
取消 提交回答
  • 为之则易,不为则难

    ${value}的方式是使用预编译的方式对sql进行处理,不会出现sql注入的问题,#{}是直接替换该位置,做字符串拼接,会存在sql注入的问题

    2019-12-09 19:02:26
    赞同 展开评论 打赏
  • #{}是预编译处理,KaTeX parse error: Expected 'EOF', got '#' at position 21: …串替换。 Mybatis在处理#̲{}时,会将sql中的#{}替…{}时,就是把${}替换成变量的值。 使用#{}可以有效的防止SQL注入,提高系统安全性。

    2019-12-04 14:14:41
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第6讲】:Spring Boot 2.0实战MyBatis与优化(Java面试题) 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载