预编译如何避免SQL注入 Mybatis SQL预编译 注入
Mybatis的预编译是借助PreparedStatement
#{}这种会自动处理成字段值(加双引号进行转义)
${}这种则不会预编译,直接当成字符串拼成SQL,会被注入
预编译功能依赖具体DB实现,有些没有实现这个功能
预编译的目的:
1. 提高性能
2. 避免注入
如何提高性能?
在使用PreparedStatement执行SQL命令时,命令会带着占位符被数据库进行编译和解析,并放到命令缓冲区
每当执行同一个PreparedStatement语句的时候,由于在缓冲区中可以...
原创
2021-01-12 10:41:16 ·
910 阅读 ·
0 评论