MyBatis 中$与#有什么不同
a) 应用场景不同
${}
表达式主要用户获取配置文件数据,DAO接口中的参数信息,当 $
出现在映射文件的 SQl 语句中时创建的不是预编译的 SQL ,而是字符串的拼接有可能会导致 SQL 注入的问题,所以一般使用 $
接收 DAO 参数时,这些参数一般是字段名,表名等.例如 order by {column}
#{}
表达式主要是用户获取 DAO 中的参数数据,在映射文件的SQL 语句中出现 #{}
表达式,底层会创建预编译的 SQL .性能会相对较好
${}
获取 DAO 参数数据时,参数必须使用 @param
注解进行修饰
#{}
获取 DAO 参数数据时,假如参数个数多于一个,可有选择的使用@param
MyBatis 中 $ 与 # 有什么区别
最新推荐文章于 2025-06-26 21:35:41 发布