java 数据库基本操作 c62=* ] ,
1、java数据库操作基本流程 M>jtFP<S
2、几个常用的重要技巧: B*!WrB:s
可滚动、更新的记录集 ~-a'v!
批量更新 MJj4Hd
事务处理 =O|c-k,f@
8\<jyJ
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 dBO@6*N4c
1、取得数据库连接 KlK`;cr?
1)用DriverManager取数据库连接 Gf8s?l
例子 Ou'?]{
String className,url,uid,pwd; >Ps7I
className = "oracle.jdbc.driver.OracleDriver"; t+CWeCp,
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; T5wjU*=IL
uid = "system"; EoX_KG{
pwd = "manager"; dQy>Nmfy
Class.forName(className); W{XkVKe1a
Connection cn = DriverManager.getConnection(url,uid,pwd); +@X5!S6
2)用jndi(java的命名和目录服务)方式 5)1+~ B
例子 7iuQ9q^&
String jndi = "jdbc/db"; w^K^I_2ge
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); I
PE}gp
DataSource ds = (DataSource) ctx.lookup(jndi); &PcyKpyd
Connection cn = ds.getConnection(); ashcvn~z
多用于jsp中 fJjgq)9
2、执行sql语句 n$m"]inX
1)用Statement来执行sql语句 ~Lfcg*
String sql; P[t$\FS
Statement sm = cn.createStatement(); -6Tk<W
sm.executeQuery(sql); // 执行数据查询语句(select) @|bP+8oU
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); g|P C$p-z+
2)用PreparedStatement来执行sql语句 0f ER*.F
String sql; 8l/[(] &
sql = "insert into user (id,name) values (?,?)"; 1|,Pq9
PreparedStatement ps = cn.prepareStatement(sql); gG54:
ps.setInt(1,xxx); Gt9wR
ps.setString(2,xxx); ^SEdA=!
... WUAJjds
ResultSet rs = ps.executeQuery(); // 查询 g.%
int c = ps.executeUpdate(); // 更新 hwnx<f '
UVf\2\ Y
3、处理执行结果 IL7`0cN(
查询语句,返回记录集ResultSet E_$z`or
更新语句,返回数字,表示该更新影响的记录数 'f?.R&