java 数据库基本操作 QUP|FIpZ
1、java数据库操作基本流程 ;L6Xs_L~
2、几个常用的重要技巧: E <@\>y.[
可滚动、更新的记录集 R^{xwI
批量更新 cC6z,0`3
事务处理 eqFvrESN~=
ePA;:8)_j
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 G(OFr2M
1、取得数据库连接 z\Ui8jo:;
1)用DriverManager取数据库连接 Ml`vx
例子 /t{=8v~
String className,url,uid,pwd; \|q-+4]@,
className = "oracle.jdbc.driver.OracleDriver"; A@ VaaX
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; @l>Xnqx)
uid = "system"; 8R/
*6S=&
pwd = "manager"; 7*'@qjTos
Class.forName(className); rWr/ p^~
Connection cn = DriverManager.getConnection(url,uid,pwd); yh!B!v'
2)用jndi(java的命名和目录服务)方式 h3 @s2 fK
例子 d.\PS9l
String jndi = "jdbc/db"; _t.FL@3e
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); fOBN=y6x
DataSource ds = (DataSource) ctx.lookup(jndi); T|+$@o
Connection cn = ds.getConnection(); 5faj;I{%JY
多用于jsp中 ZLJNw0!=|t
2、执行sql语句 wgZrrq/W|
1)用Statement来执行sql语句 3j&B(aLy
String sql; 'G
Y/Q5
Statement sm = cn.createStatement(); 8A/>JD3^
sm.executeQuery(sql); // 执行数据查询语句(select) ;Q90Y&{L=$
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close();
TcZN%
2)用PreparedStatement来执行sql语句 H-a^BZ&iU
String sql; -A;w$j6*
sql = "insert into user (id,name) values (?,?)"; "^"'uO$
PreparedStatement ps = cn.prepareStatement(sql); @XBH.A^7r
ps.setInt(1,xxx);
q)oN2-
ps.setString(2,xxx); E\!n49
... >Z"9rF2SW
ResultSet rs = ps.executeQuery(); // 查询 +S0u=u65
int c = ps.executeUpdate(); // 更新 ,>w}xWSYpG
6+ANAk
3、处理执行结果 {Q<0\`A
查询语句,返回记录集ResultSet %BICt @E
更新语句,返回数字,表示该更新影响的记录数 h#O"Q+J9n
ResultSet的方法 4?]ZV_BD
1、next(),将游标往后移动一行,如果成功返回true;否则返回false 1PIzV:L\
2、getInt("id")或getSting("name"),返回当前游标下某个字段的值 >)sqh ~P
|8'B/
p=
4、释放连接 s!`H
cn.close(); 85C#ja1&