java 数据库基本操作 DQ{Yr>J
1、java数据库操作基本流程 ddDl~&}o
2、几个常用的重要技巧: ? jywW$
可滚动、更新的记录集 8+Y+\XZG
批量更新 k{/2vV[`]
事务处理 4uW}.7R'
I/ pv0
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 fIo7R-XP
1、取得数据库连接 Nw`}iR0i
1)用DriverManager取数据库连接 .=WsB@+
例子 [@U2a$k+d
String className,url,uid,pwd; \}0J%F1
className = "oracle.jdbc.driver.OracleDriver"; e}u#:ysj
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; 1M|DaAI
uid = "system"; /dU-$}>ZI
pwd = "manager"; O.n pi: a
Class.forName(className); D8otUDB{
Connection cn = DriverManager.getConnection(url,uid,pwd); w l.#{@J]<
2)用jndi(java的命名和目录服务)方式 RO-ABFEi(
例子 @za X\
String jndi = "jdbc/db"; %&L]k>n^
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); 0hTv0#j#
DataSource ds = (DataSource) ctx.lookup(jndi); . Q3GA0O
Connection cn = ds.getConnection(); T{1Z(M+
多用于jsp中 DP=4<ES%+
2、执行sql语句 .".xNHR#
1)用Statement来执行sql语句 u:+wuyu
String sql; sK~d{)+T
Statement sm = cn.createStatement(); IfHB+H
sm.executeQuery(sql); // 执行数据查询语句(select) ;dt&*]wA
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); 4%Q8>mEvT
2)用PreparedStatement来执行sql语句 p?OwcMT]M
String sql; Jsee8^_~
sql = "insert into user (id,name) values (?,?)"; S/j~1q_|G
PreparedStatement ps = cn.prepareStatement(sql); <(Ub(
ps.setInt(1,xxx); B_w;2ZuA
ps.setString(2,xxx); n>F1G
MX
... VmLV:"P}^
ResultSet rs = ps.executeQuery(); // 查询 ;m{*iKL6{
int c = ps.executeUpdate(); // 更新 eW$G1h:
dQ97O{O:i
3、处理执行结果 9Ny{2m=Ye
查询语句,返回记录集ResultSet GWZ0!V
更新语句,返回数字,表示该更新影响的记录数 bd[zdL#4K
ResultSet的方法 sidSY8j
1、next(),将游标往后移动一行,如果成功返回true;否则返回false &:g5+([<