Java 如何使用JDBC连接数据库

 更新时间:2021年02月27日 10:49:21   作者:心悦君兮君不知-睿  
这篇文章主要介绍了Java 如何使用JDBC连接数据库,帮助大家更好的理解和学习使用Java,感兴趣的朋友可以了解下

一、使用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

以上就是Java 如何使用JDBC连接数据库的详细内容,更多关于Java 使用JDBC连接数据库的资料请关注脚本之家其它相关文章!

相关文章

  • Java 用反射设置对象的属性值实例详解

    Java 用反射设置对象的属性值实例详解

    这篇文章主要介绍了Java 用反射设置对象的属性值实例详解的相关资料,需要的朋友可以参考下
    2017-05-05
  • 基于java math API 的详细解释说明

    基于java math API 的详细解释说明

    本篇文章是对java math API进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • java截取字符串中的指定字符的两种方法(以base64图片为例)

    java截取字符串中的指定字符的两种方法(以base64图片为例)

    本文介绍了使用Java截取字符串中指定字符的方法,通过substring索引和正则实现,文章详细介绍了实现步骤和示例代码,对于想要了解如何使用Java截取字符串指定字符的读者具有一定的参考价值
    2023-08-08
  • Java的System.getProperty()方法获取大全

    Java的System.getProperty()方法获取大全

    这篇文章主要介绍了Java的System.getProperty()方法获取大全,罗列了System.getProperty()方法获取各类信息的用法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • 使用idea2017搭建SSM框架(图文步骤)

    使用idea2017搭建SSM框架(图文步骤)

    这篇文章主要介绍了使用idea2017搭建SSM框架(图文步骤),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • JNDI,JTA和JMS简介

    JNDI,JTA和JMS简介

    这篇文章主要介绍了JNDI,JTA和JMS的相关内容,包括中文释义,概念解释等,需要的朋友可以了解下。
    2017-09-09
  • 详解Java中的阻塞队列

    详解Java中的阻塞队列

    在去年的面试过程中,被面试官问道“阻塞队列”这个问题,因为当时并没有对此问题进行深入理解,只是按照自己的理解说明了该问题,最后面试结果也不太好,今天对该问题进行简要的面试并记录如下;如有错误,欢迎指正,需要的朋友可以参考下
    2021-06-06
  • Java IO流之原理分类与节点流文件操作详解

    Java IO流之原理分类与节点流文件操作详解

    流(Stream)是指一连串的数据(字符或字节),是以先进先出的方式发送信息的通道,数据源发送的数据经过这个通道到达目的地,按流向区分为输入流和输出流
    2021-10-10
  • SWT(JFace) 文本编辑器 实现代码

    SWT(JFace) 文本编辑器 实现代码

    SWT(JFace) 文本编辑器 实现代码
    2009-06-06
  • Mybatis List列表In查询实现的注意事项说明

    Mybatis List列表In查询实现的注意事项说明

    这篇文章主要介绍了Mybatis List列表In查询实现的注意事项说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02

最新评论