${"id"} 和#{"id"} 获取对象引用的区别?
Difference between ${"id"} and #{"id"} for getting the object reference?
这两个选择器有什么区别:$("id")和#('id')用于在mybatis mapper中获取对象引用xml。
我见过像
这样的例子
<select id="selectUsers" resultType="map">
select id, username, hashedPassword
from some_table
where id = #{id}
</select>
还有这样的
<select id="selectUser" parameterType="User" resultType="User">
select id, username, hashedPassword
from some_table
where id = ${user.id}
</select>
#{id} - MyBatis 会生成一个 PreparedStatement
${id} - MyBatis 会直接注入语句 string
中的值
参见 MyBatis 文档中的 String_Substitution。
这两个选择器有什么区别:$("id")和#('id')用于在mybatis mapper中获取对象引用xml。 我见过像
这样的例子<select id="selectUsers" resultType="map">
select id, username, hashedPassword
from some_table
where id = #{id}
</select>
还有这样的
<select id="selectUser" parameterType="User" resultType="User">
select id, username, hashedPassword
from some_table
where id = ${user.id}
</select>
#{id} - MyBatis 会生成一个 PreparedStatement
${id} - MyBatis 会直接注入语句 string
参见 MyBatis 文档中的 String_Substitution。