JDBC总述

2023-10-10 15:16:18 浏览数 (2)

JDBC介绍

  • JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统、通用的SQL数据库存取和操作的公共接口(一组API),定义了用来访问数据库的标准Java类库,(java.sql,javax.sql)使用这些类库可以以一种标准的方法、方便地访问数据库资源。
  • JDBC为访问不同的数据库提供了一种统一的途径,为开发者屏蔽了一些细节问题。
  • JDBC的目标是使Java程序员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统,这样就使得程序员无需对特定的数据库系统的特点有过多的了解,从而大大简化和加快了开发过程。

JDBC体系结构

  • JDBC接口(API)包括两个层次:
  • 面向应用的API:Java API,抽象接口,供应用程序开发人员使用(连接数据库,执行SQL语句,获得结果)。
  • 面向数据库的API:Java Driver API,供开发商开发数据库驱动程序用。

JDBC是sun公司提供一套用于数据库操作的接口,java程序员只需要面向这套接口编程即可。 不同的数据库厂商,需要针对这套接口,提供不同实现。不同的实现的集合,即为不同数据库的驱动。 ————面向接口编程

JDBC程序编写步骤

1.导入相关的jar包:java.sql包,对应数据库厂商提供的驱动 2.获取数据库连接:得到一个connection对象 3.使用preparedStatement实现curd操作 4.断开连接,关闭资源

JDBC API小结

  • 两种思想
  • 面向接口编程的思想
  • ORM思想(object relational mapping)
    • 一个数据表对应一个java类
    • 表中的一条记录对应java类的一个对象
    • 表中的一个字段对应java类的一个属性

sql是需要结合列名和表的属性名来写。注意起别名。

  • 两种技术
  • JDBC结果集的元数据:ResultSetMetaData - 获取列数:getColumnCount() - 获取列的别名:getColumnLabel()
  • 通过反射,创建指定类的对象,获取指定的属性并赋值

JDBC理解

jdbc中将对数据库的增删改查都封装起来了,对外体现为Dao,

  • 通常为一个基础Dao,主要作为一个抽象类出现,封装通用方法
  • 然后建立类,即具体的XxxDao,让其去继承Dao,然后在具体的XxxDao里面编写具体的操作。

真正在企业开发应用的时候,jdbc都被封装了。主要使用框架。

JDBC总结

代码语言:javascript复制
总结
@Test
public void testUpdateWithTx() {
		
	Connection conn = null;
	try {
		//1.获取连接的操作(
		//① 手写的连接:JDBCUtils.getConnection();
		//② 使用数据库连接池:C3P0;DBCP;Druid
		//2.对数据表进行一系列CRUD操作
		//① 使用PreparedStatement实现通用的增删改、查询操作(version 1.0  version 2.0)
//version2.0的增删改public void update(Connection conn,String sql,Object ... args){}
//version2.0的查询 public <T> T getInstance(Connection conn,Class<T> clazz,String sql,Object ... args){}
		//② 使用dbutils提供的jar包中提供的QueryRunner类
			
		//提交数据
		conn.commit();
			
	
	} catch (Exception e) {
		e.printStackTrace();
			
			
		try {
			//回滚数据
			conn.rollback();
		} catch (SQLException e1) {
			e1.printStackTrace();
		}
			
	}finally{
		//3.关闭连接等操作
		//① JDBCUtils.closeResource();
		//② 使用dbutils提供的jar包中提供的DbUtils类提供了关闭的相关操作
			
	}
}

0 人点赞