JDBC编程模型

为支持Java程序的数据库操作功能,Java语言采用了专门的数据库编程接口,用于在Java程序中实现数据库操作功能并简化操作过程。JDBC支持基本的SQL语句,提供多样化的数据库连接方式。

首先需要解释几个概念:
1.URL
JDBC技术使用数据库URL来标识目标数据库。其性质和标识常规网络资源的URL类似,主要由”协议名”,”子协议名”和”子名称”三部分组成,具体语法格式如下:
jdbc:<子协议名>:<子名称>

jdbc:mysql://localhost:3306/yaoyao  --连接本地mysql下的数据库
jdbc:oracle:thin:@166.111.78.98:1521:orcl 
子协议名规定数据库及连接方式
子名称规定IP地址,端口号,数据库实例名等

2.JDBC驱动
数据库驱动程序(Driver)可使数据库开展工作,以实现数据库的功能。
JDBC驱动程序分为四类:
1>JDBC-ODBC桥
利用ODBC驱动程序实现JDBC功能,该驱动程序把标准的JDBC调用转换成对应的ODBC调用,再由ODBC数据库源调用数据库本地驱动程序。
2>Java到本地API
3>Java到网络协议
4>Java到数据库协议

package cn.edu.hdu.mysql;

import java.sql.*;

public class Test {
    public static void main(String args[]) throws SQLException{

        //驱动程序名
        String driver = "com.mysql.jdbc.Driver";
        //URL
        String url = "jdbc:mysql://localhost:3306/yaoyao";
        //MySQL设置用户名
        String user = "root";
        //MySQL配置时的密码
        String password = "root";


        try{

            //加载驱动


Class.forName   (driver);
                  并返回一个connection对象一个connection对象
            Connection conn = DriverManager.getConnection(url,user,password);

            if(!conn.isClosed()) 
                 System.out.println("Succeeded connecting to 

atabase!");


            //使用statement对象执行SQL操作
            Statement stmt = conn.createStatement();
            String sql = "select * from 常住人口信息  where 所属街道=='五常街道';
            //使用statement对象的executeQuery()方法执行SELECT语句
            //使用statement对象的executeUpdate()方法执行INSERT,UPDATE,DELETE语句
            //使用statement对象的execute()方法,执行CREATE或者DROP语句。

            ResultSet rs = stmt.executeQuery(sql);

            System.out.println("执行结果如下所示:");

            while(rs.next()){
                int ID = Integer.parseInt(rs.getString("ID"));
                String sex = rs.getString("性别");
                String birth = rs.getString("出生日期");
                String number = rs.getString("户号");     
                System.out.println(ID+"性别:"+sex+"出生日期:"+birth+"户号"+number);
            }

            rs.close();
//关闭结果集
            stmt.close();
//关闭statement对象
            conn.close();
//关闭connection对象

        }catch(ClassNotFoundException e){

        }

    }
}

executeQuery()方法的返回值类型ResultSet是JDBC编程中最常使用的数据结构,它以行的形式包含。特别说明:一个Statement对象不能同时维护多个查询结果集(ResultSet对象),当我们调用其方法时,该Statement对象当前打开的结果集将被自动关闭,这意味着在继续利用Statement对象执行其他SQL语句之前,应该完成前数据集的处理。当有需要使用多个结果集,则应该创建前数据集的处理。当有需要使用多个结果集,则应该创建多个Satement对象。**对当前数据集的处理。当有需要使用多个结果集,则应该创建多个Statement对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JDBCJava数据库连接,它是一个Java API,它定义了Java程序如何访问数据库JDBC包括两个部分:JDBC API和JDBC驱动程序。 1. JDBC模型和驱动方式 JDBC模型是一种面向关系型数据库的操作模型,它包含以下四个基本步骤: - 加载数据库驱动程序 - 建立数据库连接 - 执行SQL语句 - 处理查询结果 JDBC驱动程序是一种软件,它允许Java程序与数据库进行通信。JDBC驱动程序有四种类型: - JDBC-ODBC桥接器驱动程序:使用ODBC驱动程序与数据库通信。 - 原生API驱动程序:使用数据库厂商提供的原生API与数据库通信。 - 网络协议驱动程序:使用网络协议与数据库服务器通信。 - 纯Java驱动程序:使用Java代码与数据库通信。 2. JDBC API JDBC API是Java程序访问数据库的标准接口。JDBC API包括以下核心接口和类: - DriverManager:负责管理驱动程序和建立数据库连接。 - Connection:代表一个与数据库的物理连接。 - Statement:代表一个SQL语句,用于执行SQL查询和更新。 - PreparedStatement:代表一个预编译的SQL语句,可以提高查询性能。 - ResultSet:代表查询结果集,用于处理查询结果。 3. JDBC编程 JDBC编程需要掌握以下步骤: - 加载数据库驱动程序 - 建立数据库连接 - 创建Statement或PreparedStatement对象 - 执行SQL语句 - 处理查询结果 - 关闭数据库连接 以下是一个简单的JDBC程序示例,演示了如何连接到MySQL数据库并执行查询: ```java import java.sql.*; public class JdbcDemo { public static void main(String[] args) throws SQLException { String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "password"; Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM users"); while (rs.next()) { System.out.println(rs.getInt("id") + ", " + rs.getString("name")); } rs.close(); stmt.close(); conn.close(); } } ``` JDBC编程需要注意以下几点: - 在使用JDBC API前,需要先加载数据库驱动程序。 - 建立数据库连接时,需要提供数据库的URL、用户名和密码。 - 在使用Statement或PreparedStatement对象执行SQL语句前,需要先建立数据库连接。 - 执行完SQL语句后,需要关闭ResultSet、Statement和Connection对象。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值