java 数据库基本操作 fx 0 8>r
1、java数据库操作基本流程 &[\zs&[@y
2、几个常用的重要技巧: .aZB?MW
可滚动、更新的记录集 ^ &KH|qRrO
批量更新 Ypm*or
事务处理 #O^zA`D
@W+8z#xr'
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 ;$a|4_U$m
1、取得数据库连接 m$Tt y[0
1)用DriverManager取数据库连接 ;F_&h#D]3
例子 Zo-Au
String className,url,uid,pwd; R U[
className = "oracle.jdbc.driver.OracleDriver"; *=z.H
*
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; 7({.kD6
uid = "system"; EI9Yv>7 d{
pwd = "manager"; 7;}TNK\+v
Class.forName(className); IsL=DV/
Connection cn = DriverManager.getConnection(url,uid,pwd); bv[*jr;45
2)用jndi(java的命名和目录服务)方式 _}Gs9sHr0K
例子 :+DAzjwO<
String jndi = "jdbc/db"; n O}x,sG2'
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); h^9Ne/s~
DataSource ds = (DataSource) ctx.lookup(jndi); If9!S}
wa
Connection cn = ds.getConnection(); )fZ5.W8UE]
多用于jsp中 s|!b: Ms`
2、执行sql语句 A&'HlI%J
1)用Statement来执行sql语句 Qzk/oHs
String sql; 9]8M {L
Statement sm = cn.createStatement(); _Q;M$.[zyR
sm.executeQuery(sql); // 执行数据查询语句(select)
uP ?gGo
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); QQjMC'
2)用PreparedStatement来执行sql语句 ?yz}
String sql; Df/f&;`
sql = "insert into user (id,name) values (?,?)"; .uagD[${
PreparedStatement ps = cn.prepareStatement(sql); &4MVk3SLx#
ps.setInt(1,xxx); {&(bKQ
ps.setString(2,xxx); T{K+1SPy4
... 'E8dkVlI
ResultSet rs = ps.executeQuery(); // 查询 ~h[lu^ZSi
int c = ps.executeUpdate(); // 更新 a( {`<F
$t</{]iX
3、处理执行结果 1J*wW# e
查询语句,返回记录集ResultSet "/XS3sv"s
更新语句,返回数字,表示该更新影响的记录数 Js#c9l{{
ResultSet的方法 J&: