mybatis中#{}和${}有什么区别

{}是预编译处理,是占位符;${}是字符串替换、是拼接符。

mybatis在处理#{}时,会将sql中的#{}替换为?,调用PreparedStatement来赋值,可以有效防止SQL注入。
在处理${}时,就是简单将${}替换为变量的值 ,调用Statement来赋值。

posted @ 2023-02-19 11:28  程长新  阅读(31)  评论(0)    收藏  举报