`#{}和${}的区别`? 作者: 网管 时间: 2023-06-09 分类: stackoverflow经典问题 #{}和${}的区别?#{}是占位符,用于预编译处理;${}是拼接符,用于字符串替换,没有预编译处理。当处理#{}时,MyBatis会将#{}中的参数作为字符串传入,将SQL语句中的#{}替换为问号占位符,并使用PreparedStatement的set方法来设置参数的值。使用#{}可以有效防止SQL注入,提高系统的安全性;而${}无法防止SQL注入。#{}中的变量替换是在DBMS中进行;${}中的变量替换是在DBMS之外进行。 标签: java, Java面试题, mybatis, Java问题合集, Java编程, Java问题精选, Java常见问题, MyBatis面试题