Mybatis中#{}与${}的区别 ${}是字符串替换, MyBatis在处理${}时,它会将sql中的${ }替换为变量的值,传入的数据不会加两边加上单引号。 #{ }是预编译处理,MyBatis在处理#{ }时,它会将sql中的#{ }替换为?,然后调用PreparedStatement的set方法来赋值,传入字符串后,会在值两边加上单引号。 如上面的值 “4,44,514”就会变成“ ‘4,44,514’ ”#会给字符串加上引号再传递