java 数据库基本操作 op C11c/
1、java数据库操作基本流程 TW0^wSm
2、几个常用的重要技巧: KK?~i[aL
可滚动、更新的记录集 9Ba<'wk/>"
批量更新 !%@{S8IP.v
事务处理 Gov{jksr
B!v1gh
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 mUbaR
1、取得数据库连接 'z'm:|JW
1)用DriverManager取数据库连接 enj2xye%Y
例子 %9.KH
String className,url,uid,pwd; AF-.Nwp
className = "oracle.jdbc.driver.OracleDriver"; RT>3\qhZ
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; !@X#{
uid = "system"; _HQa3wj
pwd = "manager"; KWo)}m*6
Class.forName(className); HApP*1J^c
Connection cn = DriverManager.getConnection(url,uid,pwd); HPQ ,tlp6j
2)用jndi(java的命名和目录服务)方式 @\R)k(F
例子 `L>'9rbZO
String jndi = "jdbc/db"; elN3B91\6r
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); t}nRW o
DataSource ds = (DataSource) ctx.lookup(jndi); ;Z*RCuwg
Connection cn = ds.getConnection(); 3a0C<hW
多用于jsp中 ;xc
2、执行sql语句 6eD[)_?]y
1)用Statement来执行sql语句 TxWjgW~
String sql; ;`+,gVrp
Statement sm = cn.createStatement(); HChewrUAn
sm.executeQuery(sql); // 执行数据查询语句(select) 7d*<'k]{,
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); s7?kU3y=s
2)用PreparedStatement来执行sql语句 ~6nQ-
String sql; Ft}tIP7
sql = "insert into user (id,name) values (?,?)"; wSK?mS6
PreparedStatement ps = cn.prepareStatement(sql); C&T3vM
ps.setInt(1,xxx); ElAG~u?
ps.setString(2,xxx); n_<]9
... ORoraEK
ResultSet rs = ps.executeQuery(); // 查询 5a/)|
int c = ps.executeUpdate(); // 更新 QQ9Q[c
V4H+m,R
3、处理执行结果 khfE<<