mybatis中的xml文件里#{}和${}的具体区别
区别一
#{}:相当于JDBC SQL语句中的占位符? (PreparedStatement);
${}:相当于JDBC SQL语句中的连接符合 + (Statement);
区别二
#{}:进行输入映射的时候,会对参数进行类型解析(如果是String类型,那么SQL语句会自动加上’’);
${}: 进行输入映射的时候,将参数原样输出到SQL语句中;
区别三
#{}:对简单类型(String、Date、8种基本类型的包装类)的输入进行映射时,#{}中参数名称可以任意;
$${}:对简单类型(String、Date、8种基本类型的包装类)的输入进行映射时,${}中参数名称必须是value;
区别四
${} :存在SQL注入问题 ,使用OR 1=1 关键字将查询条件忽略
近期开通了知识星球,会坚持进行创作,愿意一起学习、沉淀、成长的小伙伴们快快加入吧!!!
