zoukankan      html  css  js  c++  java
  • JDBC技术

    1.什么是JDBC,在上面时候会用到它?

    JDBC的全称是Java DataBase Connection,也就是Java数据库连接,我们可以用它来操作关系型数据库。JDBC接口及相关类java.sql包和javax.sql包里。我们可以用它来连接数据库,执行SQL查询,存储过程,并处理返回的结果。

    JDBC接口让Java程序和JDBC驱动实现了松耦合,使得切换不同的数据库变得更加简单。

    2.JDBC访问数据库的基本步骤是什么? a、加载(注册)数据库驱动(到JVM) b、建立(获取)数据库连接。

    c、创建(获取)数据库操作对象。

    d、定义操作的SQL语句。e、执行数据库操作。

    f、获取并操作结果集。

    g、关闭对象,回收数据库资源(关闭结果集-->关闭数据库操作对象-->关闭连接)

    3.execute,executeQuery,executeUpdate的区别是什么?

    a、Statement的execute(String  query)方法用来执行任意的SQL查询,如果查询的结果是一个ResultSet,这个方法就返回true。如果结果不是ResultSet,比如insert或者update查询,它就会返回false。

    b、Statement的executeQuery(String query)接口用来执行select查询,并且返回ResultSet。即使查询不到记录返回的ResultSet也不会为null。我们通常使用executeQuery来执行查询语句,这样的话如果传进来的是insert或者update语句的        话,它会抛出错误信息为 “executeQuery method can not be used for update”的java.util.SQLException。

    c、Statement的executeUpdate(String query)方法用来执行insert或者update/delete(DML)语句。

    d、只有当你不确定是什么语句的时候才应该使用execute()方法,否则应该使用executeQuery或者executeUpdate方法。

    4.JDBC的PreparedStatement是什么?

    PreparedStatement对象代表的是一个预编译的SQL语句。用它提供的setter方法可以传入查询的变量。由于PreparedStatement是预编译的,通过它可以将对应的SQL语句高效的执行多次。由于PreparedStatement自动对特殊字符转       义,避免了SQL注入攻击,因此应当尽量的使用它。

    5.相对于Statement,PreparedStatement的优点是什么?

    a、PreparedStatement有助于防止SQL注入,因为它会自动对特殊字符转义。     b、PreparedStatement可以用来进行动态查询。

    c、PreparedStatement执行更快。尤其当你重用它或者使用它的拼量查询接口执行多条语句时。

    d、使用PreparedStatement的setter方法更容易写出面向对象的代码,而Statement的话,我们得拼接字符串来生成查询语句。       如果参数太多了,字符串拼接看起来会非常丑陋并且容易出错。

  • 相关阅读:
    华为为什么再发布2016年就已经对外露脸甚至商用的欧拉操作系统。
    更安全,仅允许当前用户运行脚本法:vscode运行python时提示无法加载文件xxx.venvScriptsactivate.ps1
    ubuntu下安装odoo 14.0框架
    安利: Swagger工具, 一个REST APIs文档生成工具
    关注Brython 项目,在浏览器中运行python,部分替代javascript
    2021年最火的前端框架
    2021 最受欢迎的前端 八 个 UI 框架
    取代os.path的模块pathlib
    Java中Int转byte分析
    基于Java的时间转换:Date、Timestamp和String时间转化
  • 原文地址:https://www.cnblogs.com/ryyy/p/14215777.html
Copyright © 2011-2022 走看看