PreparedStatement 防止sql注入

  • Post author:
  • Post category:其他


sql执行分为:

1 变异阶段

2 执行阶段

sql 数据库引擎,执行sql经过一下阶段:

1 语法分析,

2 变异阶段

3 查询最佳的执行计划

4 缓存:最佳的执行计划会被存储在缓存中

5执行

PreparedStatement  并不是产生真正的sql,

PreparedStatement stmt = conn.prepareStatement("INSERT INTO student VALUES(?)");
stmt.setString(1, user);
stmt.execute();

生成带有占位符的sql,执行阶段,占位符会被替换成纯数据,

不是一个需要解析和编译的

sql



版权声明:本文为yang1370808原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。