java中为什么需要对sql进行预编译?

提问者:帅平 问题分类:面试刷题
java中为什么需要对sql进行预编译?
1 个回答
ε小可爱з
ε小可爱з
JDBC 中使用对象 PreparedStatement 来抽象预编译语句,使用预编译。预编译阶段可以优化 SQL 的执行。预编译之后的 SQL 多数情况下可以直接执行,DBMS 不需要再次编译,越复杂的SQL,编译的复杂度将越大,预编译阶段可以合并多次操作为一个操作。同时预编译语句对象可以重复利用。把一个 SQL 预编译后产生的 PreparedStatement 对象缓存下来,下次对于同一个SQL,可以直接使用这个缓存的 PreparedState 对象。Mybatis默认情况下,将对所有的 SQL 进行预编译。还有一个重要的原因,即防止SQL注入。
发布于:1周前 (04-21) IP属地:四川省
我来回答