JDBC的应用

 

JDBC的应用

一.     JDBC是一种可以执行SQL语句并可返回结果的Java API,其全称是Java DataBase Connectivity,也是一套面向对象的应用程序接口(API),它由一组用Java编程语言编写的类和接口组成,制定了统一的访问各类关系数据库的标准接口,为各种常用数据库提供了标准接口的实现。

二.     JDBC的最大特点是它独立于具体的关系数据库。

三.     JDBC的优点

a)       JDBC和ODBC十分相似,有利于软件开发人员理解

b)      JDBC使软件开发人员从复杂的驱动程序编写工作中解脱出来,可以完全专注于业务逻辑的开发。

四.     JDBC的缺点

a)       通过JDBC访问数据库时速度将受到一定影响。

b)      虽然JDBC API是面向对象的,但通过JDBC访问数据库依然是面向关系的。

c)       JDBC提供了对不同数据库厂商的支持,将对数据源带来影响。

五.     创建一个以JDBC连接数据库的程序,包括如下7个步骤。

a)       加载JDBC驱动程序
Class.forName(“com.mysql.jdbc.Driver”);
或者:Driver driv=new com.mysql.jdbc.Driver();
           DriverManager.registerDriver(driv);

b)      提供JDBC连接的URL
String url="jdbc:mysql://localhost:3306/test";
String username="root";
String password="1234";

或urll ="jdbc:mysql://localhost:3306/test?user=root&password=1234”

–       创建数据库的连接
Connection con;
con=DriverManager.getConnection(url,username,password);

或con=DriverManager.getConnection(urll);

–       创建一个Statement
Statement stat=con.createStatement();

–       执行SQL语句
stat.executeUpdate(sql);//sql是insert、update和delete语句
stat.executeQuery(sql);//sql是select语句
stat.execute(sql);  //多个结果集、多个更新计数或组合语句

–       处理结果---执行结果可能会出现两种情况

–       执行更新返回的是本次操作影响到的记录数

–       执行查询返回的结果是一个ResultSet对象,该对象以0或多条记录的形式包含了查询结果,可以通过隐含的游标(指针)来定位数据,初始化时,游标位于第一条记录前,可以通过next()方法移动到下一条记录。

ResultSet rs=stat.executeQuery(“select …”);

rs.next();//移动游标到第一条记录,如果没有到最后一条记录的后面,方法返回true,否则返回false。

while(rs.next()){

      //读取游标所指的记录行数据

      System.out.println(“学号:”+rs.getInt(1));

      System.out.println(“学号:”+rs.getInt(“id”));

}

ResultSet对象rs中有getXXX()方法,可从当前记录行中获取指定列的信息,可通过指定列索引号或列明两种方式指定要读取的列。

–       关闭JDBC对象
在操作完成以后要把所使用的JDBC对象全部关闭,以释放JDBC资源,关闭的顺序和声明顺序相反。

finally{
   if(rs!=null){
       try {
         rs.close();
       } catch (SQLException e) {
         e.printStackTrace();
       }
   }…
}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值