mybatis中为sql中传值#{}和${}的区别

在mybatis中,配置文件中sql的值,用#{}表示,例如:

<select id="getTeacher" resultType="Teacher">
        SELECT t_id id, t_name name FROM teacher WHERE t_id=#{id}
</select>

#{id}最终发送的sql为:select t_id id,t_name name from teacher where t_id=1

如果传入的是字符串则会加上'';

如果想直接取传过来的值,不加任何变化的话,用${}取

 SELECT t_id id, t_name name FROM teacher WHERE t_id=#{id} order by ${id} ${order}

#{}会使用?进行替代,${}会完全将字符串完成替代
posted @ 2014-11-10 11:54  指尖舞步  阅读(1075)  评论(0)    收藏  举报