JDBC概述与连接
程序员文章站
2022-05-29 22:58:22
...
1. JDBC概述
1.1) JDBC简介
1.2) JDBC原理
2. JDBC连接数据库
2.1) JDBC连接数据库步骤
2.2) 在项目里配置数据库驱动
2.3) 加载数据驱动
2.4) 连接及关闭数据库
1.1) JDBC简介
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
1.2) JDBC原理
JDBC原理:JDBC是以前SUN公司定义的一套访问数据库的接口(没有具体实现),一套标准,具体的实现是由各大数据库厂家去实现,每个数据库厂家都有自己的JDBC实现,也就是JDBC驱动实现类,Java应用程序连接指定数据库,需要使用厂家提供的JDBC驱动才能连接。(这里其实就是java多态的一种体现,一个接口可以有很多具体的实现)
2. JDBC连接数据库
2.1) JDBC连接数据库步骤
1.1) 加载驱动; 1.2) 连接数据库; 1.3) 使用语句操作数据库; 1.4) 关闭数据库连接,释放资源;
2.2) 在项目里配置数据库驱动
右击项目 -> BuildPath -> Configure Build Path -> Add Exteranl JARs...
2.3) 加载数据驱动
Mysql驱动名:com.mysql.jdbc.Driver 加载方式:Class.forName(驱动名); 新建JDBCPro项目 新建lib目录,拷贝mysql-connector-java-5.0.8-bin.jar 右键 -> Build Path -> Add to Build Path TestDriver.java package com.andrew.jdbc.chap01; public class TestDriver { private static String jdbcName = "com.mysql.jdbc.Driver"; public static void main(String[] args) { try { Class.forName(jdbcName); System.out.println("加载驱动成功!"); } catch (ClassNotFoundException e) { e.printStackTrace(); System.out.println("加载驱动失败!"); } } } 运行结果: 加载驱动成功!
2.4) 连接及关闭数据库
1) DriverManager驱动管理类,主要负责获取一个数据库的连接; Static Connection getConnection(String url,String user,String password)试图建立到给定数据库URL的连接。 2) MySQL数据库的连接地址格式 jdbc:mysql://IP地址:端口号/数据库名称 jdbc协议:JDBC URL中的协议总是jdbc; 子协议:驱动程序名或数据库连接机制(这种机制可由一个或多个驱动程序支持)的名称,如mysql; 子名称:一种标识数据库的方法。必须遵循“//主机名:端口/子协议”的标准URL命名约定,如//localhost:3306/db_book 3) Connection接口与特定数据库的连接(会话)。 void close()立即释放此Connection对象的数据库和JDBC资源,而不是等待它们被自动释放。 TestConnection.java package com.andrew.jdbc.chap02; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class TestConnection { // 数据库地址 private static String dbUrl = "jdbc:mysql://localhost:3306/db_jdbc"; // 用户名 private static String dbUserName = "root"; // 密码 private static String dbPassword = "root"; // 驱动名称 private static String jdbcName = "com.mysql.jdbc.Driver"; public static void main(String[] args) { try { Class.forName(jdbcName); System.out.println("加载驱动成功!"); } catch (ClassNotFoundException e) { e.printStackTrace(); System.out.println("加载驱动失败!"); } Connection connection = null; try { connection = DriverManager.getConnection(dbUrl, dbUserName, dbPassword); System.out.println("获取数据库连接成功!"); System.out.println("进行数据库操作!"); } catch (SQLException e) { e.printStackTrace(); } finally { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } } 运行结果: 加载驱动成功! 获取数据库连接成功! 进行数据库操作!