Java web13

JDBC的全称是JAVA数据库连接(java Database connectivity),他是一套用于执行SQL语句的java APL应用程序,可通过这套APL连接到关系型数据库,并使用SQL语句来完成对数据库中数据的查询,更新,新增和删除的操作

    应用程序

         |

      JDBC
        |          | 
 MySQL驱动 Oracle驱动
        |          |
   MySQL    Oracle

从图可以看出,jd bc在应用程序与数据库之间起到一个桥梁作用,当应用程序使用jd bc访问特定的数据库时,需要通过不同数据库驱动与不同的数据库进行连接,连接后即可对该数据库进行相应的操作

1,JDBC常用的API

在开发JDBC程序前,首先了解一下JDBC常用的APl。JDBC API主要位于java.sq|包中,该包定义了-系列访问数据库的接口和类。本节中,将对该包内常用的接口和类进行详细讲解。
1.Driver 接口
Driver接口是所有JDBC驱动程序必须实现的接口,该接口专门提供给数据库厂商使用。需要注意的是,在编写JDBC程序时,必须要把所使用的数据库驱动程序或类库加载到项目的classpath中(这里指MySQL驱动JAR包)。
2. DriverManager 类
DriverManager类用于加载JDBC驱动并且创建与数据库的连接。在DriverManager类中,定义了两个比较重要的静态方法
3. Connection 接口
Connection接口代表Java程序和数据库的连接,只有获得该连接对象后才能访问数据库,并操作数据表。在Connection接口中,定义了一系列方法
4. Statement 接口
Statement接口用于执行静态的SQL语句,并返回一个结果对象,该接口的对象通过Connection 实例的createStatement()方法获得。利用该对象把静态的SQL语句发送到数据库编译执行,然后返回数据库的处理结果。在Statement接口中,提供了3个常用的执行SQL语句的方法。
5.PreparedStatement接口
Statement接口封装了JDBC执行SQL语句的方法,可以完成Java程序执行sal语句的操作。然而,在实际开发过程中往往需要将程序中的变量作为SQL语句的的查询条件,而使用Statement接口操作这些SQL语句会过于繁琐,并且存在安全方面的问题。针对这一问题,JDBCAPI提供了扩展的PreparedStatement接口。
6. ResultSet 接口
ResultSet接口用于保存JDBC执行查询时返回的结果集,该结果集封装在一个逻辑表格中。在ResultSet接口内部有-个指向表格数据行的游标(或指针), ResultSet 对象初始化时,游标在表格的第1行之前,调用next()方 法可将游标移动到下一行。如果下一行没有数据,则返回false。在应用程序中经常使用next()方法作为WHIL E循环的条件来迭代ResultSet结果集。


2,实现第一个JDBC程序

(1)加载并注册数据库驱动(2)通过DriverManager获取数据库连接(3)通过Connection对象获取Statement对象(4)使用Statement执行SQL语句(5)操作ResultSet结果集(6)关闭连接,释放资源

1.搭建数据库环境

 

 插入数据

 

 2.

 3.编写JDBC程序

建cn.itcast.jdbc.example包再建类example01

 

 

2,PreparedStatement对象

在该类中使用PreparedStatement对象对数据库进行插入数据的操作,建一个example02类

 

 

5,ResultSet对象

ResutSet主要用于存储结果集,可以通过nex()方法由前向后逐个获取结果集中的数据。如果想获取结果集中任意位置的数据,则需要在创建Slatement对象时,设置两个ResutSet定义的常量,具体设置方式如下。Statemet st con.cestatent (eItSetETYFEE SCROLL INSNITE, ReulLtet.tResultSet rs = st.excuteQuery (sq1);CONCUR_ READ_ ONLY);
在上述方式中,常量“ResultSet.TYPE. SCROLL INSENITVE” 表示结果集可滚动,常量“ResultSet. CONCUR_ _READ_ ONLY”表示以只读形式打开结果集。
为了使读者更好地学习ResultSet 对象的使用,接下来,通过一个案例来演示如何使用ResultSet对象滚动读取结果集中的数据。
在chapter09项目的cntastjd.o. example包中创建一个名称为 Example03的类,该类中使用RsutSset对象取出指定数据的信息

 

 

任务9使用JDBC完成数据的增删改查

创建cn.itcast.jdbc.example.domain包,里面再创建user类

 2.创建工具类

新建cn.itcast.jdbc.example.utils包,里面JDBCUtils类

 3.创建DAO

新建cn.itcast.jdbc.example.dao包,里面usersDao类

 

 

 

 4.创建测试类

在cn.itcast.jdbc.example包,里面jdbclnsertTest类,实现向users表中添加数据的操作

 

在cn.itcast.jdbc.example包,里面FindAllUsersTest,读取users表中指定数据

 

 

在cn.itcast.jdbc.example包,里面FindUsersByldTest,实现读取users表中指定的数据

 

在cn.itcast.jdbc.example包,里面UpdateUserTest,实现修改users表中数据操作

 

 

在cn.itcast.jdbc.example包,里面DeleteUserTest,实现了删除users表中数据的操作

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值