JDBC学习笔记

JDBC

一、JAVA Datebase Connectivity(JDBC)JAVA访问数据库解决方案。

1.JDBC是一组接口,规定了JAVA访问数据库的规则,提供一系列用于操作数据库的方法。

2.JDBC是访问所有数据库系统的规范。

3.所有的实现都由数据库厂商来实现。这些接口的实现类叫做驱动。

4.JDBC提供了同一的访问数据库的操作界面。

二、JDBC工作过程:

1.加载驱动,建立连接。

Class.forName("DriverName");

2.创建语句对象。

Conncection connection=DriveManager.getConnection();

其中需要三个参数

.数据库的连接地址 url

.数据库用户名 

.用户名相应的密码 

3.执行SQL语句。

Statement

Connection.createStatement();

4.处理结果集。

insert,update,delete  DMLexecuteUpdate()

select    DQLexecuteQuery()

create   DDLexecute()

5.关闭连接。

 

三、实例:

1.发送SELECT语句得到结果集,见JDBC_Demo1.doc

2.发送DDL语句,见JDBC_Demo2.doc

3.发送DML语句,见JDBC_Demo3.doc

4.事务处理,见JDBC_Demo4.doc

5.注册、登陆系统,见Register.doc 、 Login.doc 。

6.为发送SQL语句execute(String sql)等赋值SQL语句时,sql中不加分号结束SQL语句。

四、PreparedStatement预处理语句对象,是Statement的子接口。只要执行动态SQL,必须使用PreparedStatement

1.不会出现SQL注入。

2.批量执行相同语义,不同内容的SQL语句,性能更高。Oracle中,在编译SQL语句后,会生成执行计划,执行计划放在缓存中,如果下次遇到相同的SQL语句,就会调用缓存中的相同的执行计划,执行SQL语句。PreparedStatement语句在执行execute方法时,在Oracle中生成的执行计划为带“?”的执行计划,当“?”值改变时,Oracle的执行计划不改变,也就是同一语义的SQL语句,使用PreparedStatement只生成一条执行计划,使用这条执行计划反复执行“?”值不同的SQL语句。(而Statement语句对象每次都发送一条不同的SQL语句时,Oracle每次都要生成不同的执行计划,取执行SQL语句。预处理语句就是帮助Oracle省去了重复生成执行计划这个步骤,减少开销,提升性能。)

3.使用它执行动态SQLSQL语句不再需要将SQL命令和JAVA变量拼接。而是使用“?”代替JAVA变量。

例如:INSERT INTO emp(empno,ename) VALUES(? , ?);

SQL语句执行之前,通过setTypeof?(int  ?_loc  ,  Typeof?  ?_value)方法,装载“?”的值。

4.在传入参数时,数据库里设置了默认值,但是使用PreparedStatementsetInt/setDouble方法时不能传入空值,可以使用setObject方法来传入值,如果传入的值为空时,即为默认值。

5.实例,见PreparedStatement().doc

五、配置文件、连接池:DBCP-database connection pool

1.实例,见JDBC_ConnectionPool_Util.doc 。

六、JDBC中的批量操作,在数据量非常庞大的时候使用,可以提升效率。

1.使用普通处理execute(),每次调用execute()方法,JAVA程序都会与数据库服务器进行一次网络交互。

2.使用批处理executeBatch(),将SQL语句中的”?“替换的值,添加到批处理中缓存,等待一起发送。大量尖山、哦与数据库服务器网络交互的次数,提高JDBC批量处理数据的效率。在使用批处理时,如果数据量比较大,想要随时执行,并清空批处理的缓冲区,可使用clearBatch()方法,放在批处理命令executeBatch()后刷新缓冲区。

3.实例,见Batch.doc

七、获取插入、修改或删除的行的值。

1.实例,见PreparedStatement(sql,columns).doc

八、获取结果集元数据

1.数据库数据:通过查询,从数据库表中获取的数据。

2.结果集元数据:描述数据的数据。例如:结果集中有多少字段,每个字段的名字,字段类型。

 

JDBC总结

一、JDBC概念:

1.JAVA提供访问数据的一套标准的解决方案。

2.JDBC包含一组接口,由数据库厂商分别提供针对各自数据库软件管理系统的实现类——驱动程序。

3.这组接口规定了访问数据库标准流程和操作方法。

二、标准流程

三、结果集处理

四、语句对象

1.Statement:普通语句对象

2.PreparedStatement:预处理语句对象

3.CallableStatement:调用存储过程

五、JDBC中的连接池使用(DBCP

六、Properties:属性文件

七、JDBC中的事物处理

八、JDBC中的批处理

九、ResultSetMetaData:结果集元数据

十、DAO的规范书写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值