JavaWEB基础面试题篇之——JDBC技术

JDBC有关技术

日常打卡:第一天

1、简述原生jdbc操作数据库流程?

1)注册驱动
     Class.forName(  )                     /* 加载数据库链接驱动*/
2)获取链接
     DriverManager.getConnection()         /* 获取数据链接对象 */
3)创建SQL执行对象
       此时有以下两种方式
       A. Statement 方式
       B. PreparedStatement 方式(可防SQL注入)
4)执行SQL语句命令,返回结果集(ResultSet)
      如果语句中含有参数值,需要用 setXXX() 设置相应的参数值
5)关闭结果集,关闭会话,关闭链接。(注意关闭时顺序)

2、JDBC中为什么要使用 PreparedStatement ?

1、PreparedStatement接口继承于Statement,PreparedStatement是预编译的
   SQL语句,效率高于Statement。
2、PreparedStatement 作为Statement的子类,其继承了Statement类中所有的
   功能。三种方法excute、executeQuery、executeUpdate已经被更改使之不再
   需要参数。
3、PreparedStatement支持 ? 占位符,比Statement更加灵活。
4、PreparedStatement可以有效防止SQL注入,安全性更高于Statement。 

3、在JDBC中为什么不推荐使用Statement ?

 1、Statement需要不断的进行拼接,代码的可读性与维护性低。
 2、Statement容易被SQL语句注入,安全性低。
 3、Statement驱动程序一般不会对sql语句作处理而直接交给数据库,对于多次重
 复执行的语句,反复进行编译,效率会低。

4、关系数据库中连接池的机制是什么?

前提:先要为数据库链接建立一个缓冲池

1、从连接池中获取或创建可用链接
2、使用完毕,归还链接,从新放入连接池中
3、在系统关闭前,断开所有链接并释放链接占用的系统资源
4、处理无效链接,限制连接池中的连接总数不低于或者不超过某个限定值

注意

1)在连接池中有最小连接数和最大连接数。

  也就是说:数据库池连接数量一直保持一个不少于最小连接数的数量,当数量不够时,
  数据库会创建一些连接,直到一个最大连接数,之后连接数据库就会等待。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值