logo

MyBatis 中 #{} 和 ${} 的区别是什么?

What is the difference between #{} and ${} in MyBatis?

题目类型: 技术面试题

这是一道技术面试题,常见于澳洲IT公司面试中。

难度: medium

分类: Backend

标签: MyBatis, #{}, ${}, SQL 注入

参考答案摘要

答案 \#{} 是预编译处理,${} 是字符替换。 在使用 #{} 时, MyBatis 会将 SQL 中的 #{} 替换成“?”,配合 PreparedStatement 的 set 方法赋值,这样可以有效的防止 SQL 注入,保证程序的运行安全。

本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。

← 返回面试题库

MyBatis 中 #{} 和 ${} 的区别是什么?

Mediummybatissqljava

想查看完整答案?

登录匠人学院学习中心,获取 STAR 格式回答和详细技术解析

前往学习中心查看答案