java 数据库基本操作 b "AHw?5F
1、java数据库操作基本流程 a}I z
2、几个常用的重要技巧: D-;43>yi<
可滚动、更新的记录集 'rcsK
批量更新 |Y,X=Ed
事务处理 XQ?)
W1M/Z[h6)5
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 KTS7)2ci
1、取得数据库连接 4 9+}OIX
1)用DriverManager取数据库连接 f<xt3
例子 @o-evH;G
String className,url,uid,pwd; ~NJL S-
className = "oracle.jdbc.driver.OracleDriver"; hJtghG6v
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; s 13 d*
uid = "system"; ,'@ISCK^
pwd = "manager"; '\3.isTsx
Class.forName(className); s9)8{z
Connection cn = DriverManager.getConnection(url,uid,pwd); R|^t~h-
2)用jndi(java的命名和目录服务)方式 xdSj+507
例子 lVKF^-i
String jndi = "jdbc/db"; boHm1hPKS
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); 8C4@V[sm`
DataSource ds = (DataSource) ctx.lookup(jndi); B\~3p4S
Connection cn = ds.getConnection(); =?QQb>
多用于jsp中 "nS{
;:
2、执行sql语句 vcUM]m8k
1)用Statement来执行sql语句 -1Ki7|0,
String sql; z@40g)R2A
Statement sm = cn.createStatement(); RI].LB_
sm.executeQuery(sql); // 执行数据查询语句(select) Tr+Y@]"
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); os0"haOI9h
2)用PreparedStatement来执行sql语句 'G
By^hj?
String sql; k1
txY
sql = "insert into user (id,name) values (?,?)"; i2 Iu2
PreparedStatement ps = cn.prepareStatement(sql); sZ(Q4)r
ps.setInt(1,xxx); ?_`P;}4#
ps.setString(2,xxx); n ;fTx
... .M#>@~XR
ResultSet rs = ps.executeQuery(); // 查询 &qj&WfrB,
int c = ps.executeUpdate(); // 更新 -
&LZle&M
I5 7<