·JDBC

JDBC是Java访问数据库的标准API,提供与数据库连接、SQL语句执行、数据查询和修改等功能。它分为双层和三层架构,适用于各种Java应用程序。JDBC驱动由数据库厂商实现,确保跨平台兼容性。事务处理是JDBC中的重要概念,确保数据一致性。
摘要由CSDN通过智能技术生成

 JDBC安装详见:http://t.csdn.cn/4XsVM

一、简介

1.解释

JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库

  JDBC API 库包含下面提到的每个任务,都是与数据库相关的常用用法。

  • 制作到数据库的连接。
  • 创建 SQL 或 MySQL 语句。
  • 执行 SQL 或 MySQL 查询数据库。
  • 查看和修改所产生的记录。

  从根本上来说,JDBC 是一种规范,它提供了一套完整的接口,允许便携式访问到底层数据库,因此可以用 Java 编写不同类型的可执行文件,例如:

  • Java 应用程序
  • Java Applets
  • Java Servlets
  • Java ServerPages (JSPs)
  • Enterprise JavaBeans (EJBs)

  所有这些不同的可执行文件就可以使用 JDBC 驱动程序来访问数据库,这样可以方便的访问数据。JDBC 具有 ODBC 一样的性能,允许 Java 程序包含与数据库无关的代码。

2.原理

JDBC是以前SUN公司定义的一套访问数据库的接口(没有具体实现),一套标准,具体的实现是由各大数据库厂家去实现,每个数据库厂家都有自己的JDBC实现,也就是JDBC驱动实现类,Java应用程序连接指定数据库,需要使用厂家提供的JDBC驱动才能连接。(这里其实就是java多态的体现,一个接口可以有很多具体的实现)

二、JDBC 架构

JDBC分为双层架构和三层架构。

1.双层

作用:此架构中,Java Applet 或应用直接访问数据源。

条件:要求 Driver 能与访问的数据库交互。

机制:用户命令传给数据库或其他数据源,随之结果被返回。

部署:数据源可以在另一台机器上,用户通过网络连接,称为 C/S配置(可以是内联网或互联网)。

2.三层

侧架构特殊之处在于,引入中间层服务。

流程:命令和结构都会经过该层。

吸引:可以增加企业数据的访问控制,以及多种类型的更新;另外,也可简化应用的部署,并在多数情况下有性能优势。

历史趋势: 以往,因性能问题,中间层都用 C 或 C++ 编写,随着优化编译器(将 Java 字节码 转为 高效的 特定机器码)和技术的发展,如EJB,Java 开始用于中间层的开发这也让 Java 的优势突显出现出来,使用 Java 作为服务器代码语言,JDBC随之被重视。

三、常见的JDBC组件

  如下所示为JDBC开发中主要用到的类。

  • DriverManager :这个类管理一系列数据库驱动程序。匹配连接使用通信子协议从 JAVA 应用程序中请求合适的数据库驱动程序。识别 JDBC 下某个子协议的第一驱动程序将被用于建立数据库连接。
  • Driver : 这个接口处理与数据库服务器的通信。你将很少直接与驱动程序互动。相反,你使用 DriverManager 中的对象,它管理此类型的对象。它也抽象与驱动程序对象工作相关的详细信息。
  • Connection : 此接口具有接触数据库的所有方法。该连接对象表示通信上下文,即,所有与数据库的通信仅通过这个连接对象进行。
  • Statement : 使用创建于这个接口的对象将 SQL 语句提交到数据库。除了执行存储过程以外,一些派生的接口也接受参数
  • ResultSet : 在你使用语句对象执行 SQL 查询后,这些对象保存从数据获得的数据。它作为一个迭代器,让您可以通过它的数据来移动。
  • SQLException : 这个类处理发生在数据库应用程序的任何错误

四、事务处理

事物:由一组SQL语句组成。

事务处理:应用程序保证事务中的SQL语句要么全部执行,要么一个都不执行。

(注:事务处理是保证数据库中数据完整性与一致性的重要机制)

1.用setAutoCommit(booean b)方法关闭自动提交模式

关闭自动提交模式,就是关闭SQL语句的即刻生效性。

注:要先关闭自动提交模式,再获取Statement对象sql。

例:

con.setAutoCommit(false);
sql=con.createStatement();

2.用commit()方法处理事务

con调用setAutoCommit(false)后,con所产生的Statement对象对数据库提交任何一条SQL语句都不会立刻生效,这样一来,就有机会让Statement对象提交多条sq语句,这些SQL语句就是一个事务。事务中的SQL语句不会立刻生效,直到对象con调用commit()方法,试图让事务中的SQL语句全部生效。

3.用rollback()方法处理事务失败

事务失败:就是撤销事务所做的操作。在con调用commit()方法进行事务处理时,只要事务中任何一个SQL语句未能成功生效,就会报异常。此时,必须让con调用rollback()方法,撤销事务中成功执行的SQL语句对数据库的操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值