java 数据库基本操作 b';oFUU>Q
1、java数据库操作基本流程 "@ 1+l&
2、几个常用的重要技巧: r&rip^40
可滚动、更新的记录集 {f1iys'Om
批量更新 L*(Sh2=_
事务处理 H;w8[ImK
FHOF6}if
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 XiW~?
*Z
1、取得数据库连接 X\Gbs=sf6
1)用DriverManager取数据库连接 Gv\39+9=
例子 i0q<,VSl$_
String className,url,uid,pwd; lD9QS ;
className = "oracle.jdbc.driver.OracleDriver"; 0Ba*"/U]t~
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; SB
x<-^
uid = "system"; ks19e>'5Q
pwd = "manager"; (pv6V2i
Class.forName(className); }z,f8Yz
Connection cn = DriverManager.getConnection(url,uid,pwd); ,azBk`$iQr
2)用jndi(java的命名和目录服务)方式 v{r,Wy3
例子 nI_UL
String jndi = "jdbc/db"; 0+{CN|0
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); 8.WZC1N
DataSource ds = (DataSource) ctx.lookup(jndi); $ VTk0J-W
Connection cn = ds.getConnection(); u;G-46
多用于jsp中 2QIx~Er
2、执行sql语句 Ci9]#)"c
1)用Statement来执行sql语句 K3dg.>O
String sql; WzhY4"p
Statement sm = cn.createStatement(); _ci8!PP
sm.executeQuery(sql); // 执行数据查询语句(select) GtLnh~)
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); a1dkB"Zp.p
2)用PreparedStatement来执行sql语句 2I$-&c]
String sql; O=
84ZP%
sql = "insert into user (id,name) values (?,?)"; qbx}9pp}g
PreparedStatement ps = cn.prepareStatement(sql); _=YHO.
ps.setInt(1,xxx); 2'U+QK@
ps.setString(2,xxx); &zV;p
... @V =HY
ResultSet rs = ps.executeQuery(); // 查询 5c
($~EFr
int c = ps.executeUpdate(); // 更新 X+KQ%Efo
9M;k(B!
3、处理执行结果 2A&Y