Java 如何使用JDBC连接数据库

作者:心悦君兮君不知-睿 时间:2024-01-23 04:30:12 

目录
  • 一、使用JDBC连接数据库

    • 1.使用JDBC-ODBC桥驱动程序连接数据库

    • 2.下面进行代码演示

    • 3.注意点

  • 二、源码:

    一、使用JDBC连接数据库

    1.使用JDBC-ODBC桥驱动程序连接数据库

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

    2.下面进行代码演示

    1.注册数据库驱动程序的语法格式如下:


    DriverManager.registerDriver(Driver driver)

    或者


    Class.forName("DriverName");

    2.创建数据库连接


    String url = "jdbc:odbc:student";
    //student是在数据源管理器中创建的数据源名字
    Connection con = DriverManager.getConnection(url);
    //一下语句是采用了一种无数据源连接数据库的方式
    con=DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver(*.mdb)};
    DBQ=d:\\xsgl.mdb")

    3.获取Statement对象
    可见之前连载的三种成员方法创建Statement对象、PreparedStatement对象、CallableStatement对象

    4.执行SQL语句
    所有的Statement都有以下三种执行SQL语句的方法
    (1)execute():可以执行任何SQL语句
    (2)executeQuery():执行查询语句,返回ResultSet对象
    (3)executeUpate():执行增删改操作

    5.获得结果结合ResultSet对象,在进行一系列操作。
    举例:


    package com.bjpowernode.java_learning;

    import java.sql.Statement;
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;

    public class D134_1_JDBCConnection {
    public static void main(String[] args) {
    Statement stmt = null;
    ResultSet rs = null;
    Connection conn = null;

    try {
    //1.注册数据库的驱动程序
    Class.forName("com.hxtt.sql.access.AccessDriver");
    //2.通过DriverManager获取数据库连接
    conn = DriverManager.getConnection("jbdc:Access:///e:xsgl.mdb");
    //3.通过Connection对象获取Statement对象
    stmt = conn.createStatement();
    //4.使用Statement执行SQL语句
    String sql = "select * from studentInfo";
    rs = stmt.executeQuery(sql);
    //5.操作ResultSet结果集
    System.out.println("studentID | studentName | studentSEX");
    while(rs.next()) {
    int id = rs.getInt("studentID");//通过列名获取指定字段的值
    String name = rs.getString("studentName");
    String psw = rs.getString("studentSEX");
    System.out.println(id + " | " + name + " | " + psw);
    }
    }catch(Exception e) {
    e.printStackTrace();
    }finally {
    //6.回收数据库资源
    if (rs != null) {
    try {
    rs.close();
    }catch(SQLException e) {
    e.printStackTrace();
    }
    rs = null;
    }
    if(stmt != null) {
    try {
    stmt.close();
    }catch(SQLException e) {
    e.printStackTrace();
    }
    stmt = null;
    }
    if (conn != null) {
    try {
    conn.close();
    }catch(SQLException e) {
    e.printStackTrace();
    }
    conn = null;
    }
    }
    }
    }

    3.注意点

    • JDK1.7以后的版本不再包含Access桥接驱动程序,因此不再支持JDBC-ODBC桥接方式,需要下载Access驱动程序的jar包(Access_JDBC30.jar),而JDK1.1到JDK1.6都自带jar包,不需要下载。

    • 下载完成后把Access_JDBC30.jar包放到JDK的lib文件夹里,之后修改环境变量CLASSPATH,在其中加上这个jar包,路径为jar包的绝对路径,例如:C:\ProgramFiles\Java\jre1.8.0_65\lib\Access_JDBC30.jar。如果CLASSPATH中已经有了其他的值,最后添加该包就可以了。然后再工程里面设置好,至此就可以正常连接数据库了,但是驱动的名称就不是sun.jdbc.odbc.JdbcOdbcDriver,而是com.hxtt.sql.access.AccessDriver,数据库路径也可以采用直连,URL可以设置为jdbc:Access:///d:MYDB.accdb。

    二、源码:

    D134_1_JDBCConnection.java
    https://github.com/ruigege66/Java/blob/master/D134_1_JDBCConnection.java

    来源:https://www.cnblogs.com/ruigege0000/p/13460865.html

    标签:Java,JDBC,连接数据库
    0
    投稿

    猜你喜欢

  • NumPy 矩阵乘法的实现示例

    2022-12-15 02:48:14
  • opencv-python 读取图像并转换颜色空间实例

    2022-04-08 04:02:55
  • vue项目中使用axios遇到的相对路径和绝对路径问题

    2024-05-13 09:37:40
  • asp 网站静态化函数代码html

    2011-03-16 11:21:00
  • 人工智能自动sql优化工具--SQLTuning for SQL Server

    2024-01-25 00:54:15
  • Python 2种方法求某个范围内的所有素数(质数)

    2022-09-07 08:43:40
  • Django使用Celery加redis执行异步任务的实例内容

    2022-08-25 18:09:53
  • python爬取音频下载的示例代码

    2023-07-25 09:59:57
  • vue中对象数组去重的实现

    2024-04-27 16:18:27
  • javascript将中国数字格式转换成欧式数字格式的简单实例

    2024-05-09 10:20:21
  • 利用Python判断文件的几种方法及其优劣对比

    2022-07-03 06:20:02
  • Python写的贪吃蛇游戏例子

    2023-06-26 15:50:55
  • Go语言中new()和 make()的区别详解

    2024-05-22 17:45:33
  • 360搜索引擎自动收录php改写方案

    2024-05-11 09:19:26
  • Python GUI布局工具Tkinter入门之旅

    2021-11-08 14:38:23
  • Python创建xml的方法

    2021-11-25 05:59:44
  • SQL Server基础之行数据转换为列数据

    2024-01-19 22:16:00
  • XML卷之实战锦囊(2):动态查询

    2008-09-05 17:20:00
  • apache集成php7.3.5的详细步骤

    2023-08-20 16:31:05
  • Pycharm无法显示动态图片的解决方法

    2023-01-29 23:13:42
  • asp之家 网络编程 m.aspxhome.com