-
$ {}属于静态文本替换,比如${driver}会被替换为com.mysql.jdbc.driver
-
#{}是SQL的占位符,Mybatis会将SQL中的#{}替换为?,在 sql 执⾏前会使⽤PreparedStatement 的参数设置⽅法,按序给 sql 的?号占位符设置参数值。
因此,#{}与${}相比,#{}可以很大程度的防止sql注入,因为对sql做了预编译处理,因此在使用中一般使用#{}方式。
#{}和${}的区别是什么?(Mybatis怎么防止SQL注入?)
最新推荐文章于 2023-07-13 18:00:00 发布