java 数据库基本操作 K0'p*[yO/j
1、java数据库操作基本流程 kAUL7_>6X
2、几个常用的重要技巧: 4\V/A+<W
可滚动、更新的记录集 OiC|~8
批量更新 N1y,~Z
事务处理 I
WT|dA >
Ai 8+U)
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 _a$5"
1、取得数据库连接 pox;NdX7
1)用DriverManager取数据库连接 {9P(U\]e]k
例子 wD6QN
String className,url,uid,pwd; ~k@{b&
className = "oracle.jdbc.driver.OracleDriver"; u@Ni *)p`
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; 1:DA{ejS
uid = "system";
c*[aIqj
pwd = "manager"; ESIeZhXVH
Class.forName(className); eUu<q/FUMj
Connection cn = DriverManager.getConnection(url,uid,pwd); ~(c<M>Q8
2)用jndi(java的命名和目录服务)方式 :SMf
(E 5
例子 1z,P"?Q
String jndi = "jdbc/db"; 3h o'\Ysu/
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); +Swl$ab
DataSource ds = (DataSource) ctx.lookup(jndi); F2(^OFh
Connection cn = ds.getConnection(); 9}K
K]m6u}
多用于jsp中 h3\(660>$
2、执行sql语句 &'i.W}Ib!
1)用Statement来执行sql语句 3WGOftLzt
String sql; K-.%1d@$y
Statement sm = cn.createStatement(); vgNrHq&2q
sm.executeQuery(sql); // 执行数据查询语句(select) h^WMv
*2
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); ]w-W
2)用PreparedStatement来执行sql语句 ) P+<=8@a
String sql; ]d|M@v~c4
sql = "insert into user (id,name) values (?,?)"; R5},E
PreparedStatement ps = cn.prepareStatement(sql); N /2WUp
ps.setInt(1,xxx); CAA3-"Cwi
ps.setString(2,xxx); -0CL#RzKR
... o {q8An)
ResultSet rs = ps.executeQuery(); // 查询 WwKpZ67$R
int c = ps.executeUpdate(); // 更新 3-0jxx(
n0':6*oGW
3、处理执行结果 %vG;'_gMB
查询语句,返回记录集ResultSet YD~(l-?"
更新语句,返回数字,表示该更新影响的记录数 cI7a TLC"s
ResultSet的方法 }LWrtmc
1、next(),将游标往后移动一行,如果成功返回true;否则返回false :.-KM7tDI1
2、getInt("id")或getSting("name"),返回当前游标下某个字段的值 L&5zr_
yRhD<