java 数据库基本操作 .0gF&>I}
1、java数据库操作基本流程 7E}.P1
2、几个常用的重要技巧: 6(9S'~*'R
可滚动、更新的记录集 }r)T75_1
批量更新 3<L>BakD
事务处理 Mjr19_.S
*$4 EXwt'
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 k|-P&g
1、取得数据库连接 "PI]k
1)用DriverManager取数据库连接
6[{|'
例子 q!sazVaDp
String className,url,uid,pwd; Fhr5)Z
className = "oracle.jdbc.driver.OracleDriver"; G5R"5d'
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; :hA=(iz
uid = "system"; zt23on2
pwd = "manager"; oU`J~6.&S
Class.forName(className); OZ'=Xtbn
Connection cn = DriverManager.getConnection(url,uid,pwd); o(w xu)
2)用jndi(java的命名和目录服务)方式 ap7ZT7KW
例子 a'U}.w}
String jndi = "jdbc/db"; ,$xV&w8f\"
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); FU~xKNr
DataSource ds = (DataSource) ctx.lookup(jndi); oOj7y>Nm
Connection cn = ds.getConnection(); aSy^(WN8
多用于jsp中 .ZzxW
2、执行sql语句 [
BpZ{Ql
1)用Statement来执行sql语句 jEkO#xI
String sql; d8o<Q 9
Statement sm = cn.createStatement(); Ew9\Y R}
sm.executeQuery(sql); // 执行数据查询语句(select) .>.B
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); X,Q'Xe/
2)用PreparedStatement来执行sql语句 .0 [
zZ
String sql; x bsk
sql = "insert into user (id,name) values (?,?)"; 2A5R3x=\
PreparedStatement ps = cn.prepareStatement(sql); ;B,6v P#
ps.setInt(1,xxx); (H/2{##
ps.setString(2,xxx); Z/p>>SCak
... AxbQN.E
ResultSet rs = ps.executeQuery(); // 查询 U<