java 数据库基本操作 pyW u9
1、java数据库操作基本流程 oaDsk<(j;R
2、几个常用的重要技巧: 1ZKzumF
可滚动、更新的记录集
c!uW}U_z
批量更新 chAan~r[*
事务处理 (=T$_-Dj`}
i!MwBYk
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 c/u_KJFF-n
1、取得数据库连接 Eb.;^=x
1)用DriverManager取数据库连接 Dr"/3xm
例子 mPVE?jnR^0
String className,url,uid,pwd; ".2A9]_s
className = "oracle.jdbc.driver.OracleDriver"; 4^!4eyQ^
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; w&lZ42(mF
uid = "system"; 5su.+4z\
pwd = "manager"; f(u&XuZ
Class.forName(className); ]RFdLV?
Connection cn = DriverManager.getConnection(url,uid,pwd); g<[rH%\6fg
2)用jndi(java的命名和目录服务)方式 dA#{Cn;
例子 F1A1@{8bN
String jndi = "jdbc/db"; `%E9xcD%
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); ~r`Wr`]_ z
DataSource ds = (DataSource) ctx.lookup(jndi); G+Dpma ]
Connection cn = ds.getConnection(); ;WI]vn
多用于jsp中 te2
Iu%5 z
2、执行sql语句 '.p? 6k!K
1)用Statement来执行sql语句 BQjam+u6
String sql; &P n]
Statement sm = cn.createStatement(); Z|`fHO3j
sm.executeQuery(sql); // 执行数据查询语句(select) YlUpASW
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); S]yvMj_?
2)用PreparedStatement来执行sql语句 #Mi|IwL
String sql; ^&:'NR
sql = "insert into user (id,name) values (?,?)"; WaYO1*=
PreparedStatement ps = cn.prepareStatement(sql); FWTx&Ip
ps.setInt(1,xxx); MtG_9-
ps.setString(2,xxx); +(ny|r[#
... p~bkf>
ResultSet rs = ps.executeQuery(); // 查询 d~[UXQC
int c = ps.executeUpdate(); // 更新 x9}++r
9p>
/?H|
3、处理执行结果 KZK,w#9.
查询语句,返回记录集ResultSet s[-]cHQ
更新语句,返回数字,表示该更新影响的记录数 ]A!.9Ko}u
ResultSet的方法 xYR#%! M
1、next(),将游标往后移动一行,如果成功返回true;否则返回false vbn>mg5
2、getInt("id")或getSting("name"),返回当前游标下某个字段的值 a8h]n:!
G6Q4-kcK
4、释放连接 `Ei"_W
cn.close(); m,NMTyJoz
一般,先关闭ResultSet,然后关闭Statement(或者PreparedStatement);最后关闭Connection Mj~${vj
V<