JAVA面试锦囊(三)

● 说说存储过程的特点?

(1) 存储过程只在创建时进行编译,以后每次执行存储过程都不需要重新编译,而一般SQL语句每次执行一次就编译一次,因此使用存储过程可以大大提高数据库执行速度。

(2) 通常,复杂的业务逻辑需要多条SQL语句。这些语句要分别的向客户机发送到服务器,当客户机和服务器之间的操作很多时,将产生大量的网路传输。而存储过程可以把这些SQL封装起来,通过调用存储过程来减少网络传输。

(3) 存储过程创建一次便可以反复的使用,从而可以减少数据库开发人员的工作量。

(4) 安全性高,存储过程可以屏蔽对底层数据库对象的直接访问,使用EXECUTE权限调用存储过程,无需拥有访问地产数据库对象的显示权限。

(5) MySql是在5.0后实现对存储过程的支持。
● jdbc如何调用存储过程的?

Connection类的prepareCall方法调用存储过程,再通过方法获得的返回值对象的调用registerOutParameter方法设置参数。
● 简单说一下你对jdbc的理解?

JDBC (Java database connection):java数据库连接,数据库管理系统是很多的,每一个数据库管理系统支持的命令是不一样的。Java只定义接口,而数据库厂商自己实现接口,对于我们开发者而言,只需要导入对应厂商开发的实现即可,然后以接口方式进行调用即可。
● jdbc中preparedStatement与Statement比较有什么优点

(1) PreparedStatement是预编译的,比Statement速度快。

(2) 代码的可读性和可维护性PreparedStatement更好。

(3) 安全性,PreparedStatement可以直接防止SQl注入攻击。而Statement不能。
● 数据库连接池的作用?

(1) 限定数据库连接的个数,不会导致由于数据库连接过多而系统运行缓慢或崩溃。

(2) 数据库连接池不需要每次去创建或销毁,响应时间更快以及节约了资源。

发布了90 篇原创文章 · 获赞 7 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_20282955/article/details/104277550