14章、整合数据库
14.1 JDBC入门
JDBC: java DataBase Connectivity
JDBC标准:分为两部分:JDBC应用程序开发者接口、JDBC驱动程序开发者接口
JDBC驱动程序的4中类型:P456
1
2
3
4Type 4 Native Protocol Driver 一般由数据库厂商直接提供,JDBC API—>与数据库约定好的特定网络协议 最常见的驱动程序类型
JDBC驱动程序
获取连接 Connection
DriverManager 逐一使用Driver尝试联机,getConnection()
语句对象Statement
createStatement() 他有以下方法
executeUpdate() insert execute delete drop table alter table
executeQuery() select
execute() 事先无法知道SQL是要查询还是更新时,用该方法
ResultSet结果集
ResultSet结果集的next()方法,每次调用,光标都会向下移动,指向下一条数据
数据库的关闭操作
1关闭结果集ResultSet
2关闭语句对象Statement exexuteQuery
3关闭连接Connection
预处理语句对象 PreparedStatement
使用描述句池Statement Pool将一些频繁使用的PreparedStatement重复使用,减小生成对象的负担
以串接方式组合的SQL都会有SQL注入的隐忧 P471
不要频繁使用串接—>1SQL注入风险,2效能上的影响
至少使用StringBuffer 来实现
使用CallableStatement
数据库的预存程序
使用DataSource取得连接 P476
连接池 重复使用已经取得的Connection
使用Resultset 卷动、更新数据
批次更新 addBatch() executeBatch()
网络传送信息:打开IO,进行网络路由..每发送一次,都会占用一定时间和资源
大量的SQL更新,会带来大量的网络信息传送,效能上不好。用批次更新比较好~
BLOB
CLOB
JNDI 是什么
JNDI是 Java 命名与目录接口(Java Naming and Directory Interface)
JNDI避免了程序与数据库之间的紧耦合,使应用更加易于配置、易于部署
交易简介 transaction
ACID
原子性
一致性
隔离行为
持续性
Database transaction
metadata简介
诠读数据的数据
RowSet简介
javax.sql.RowSet接口