java 数据库基本操作 4^ZbT
1、java数据库操作基本流程 ?4_ME3$t
2、几个常用的重要技巧: t*Z4&Sy^
可滚动、更新的记录集 .F0Q<s9
批量更新 h<g2aL21?F
事务处理 VD+v\X_
|[$TT$Fb
java数据库操作基本流程:取得数据库连接 - 执行sql语句 - 处理执行结果 - 释放数据库连接 7_L$ XIa
1、取得数据库连接 t~Qj$:\
1)用DriverManager取数据库连接 +rka5ts
例子 n -xCaq
String className,url,uid,pwd; _DYe<f.
className = "oracle.jdbc.driver.OracleDriver"; Po\d!
url = "jdbc:oracle:thin:@127.0.0.1:1521:orasvr; V" KuwM
uid = "system"; `F_R J.g*p
pwd = "manager"; Y 9BKd78Y
Class.forName(className); WFvVu3
Connection cn = DriverManager.getConnection(url,uid,pwd); ".kH5(:
2)用jndi(java的命名和目录服务)方式 W A#y&
例子 L^Fb;sJYI
String jndi = "jdbc/db"; Gf-GDy\{
Context ctx = (Context) new InitialContext().lookup("java:comp/env"); H2yPVJ\Y)"
DataSource ds = (DataSource) ctx.lookup(jndi); C-^8;xd
Connection cn = ds.getConnection(); r(g#3i4Q
多用于jsp中 K!v\r"N
2、执行sql语句 jN/snU2\0
1)用Statement来执行sql语句 jT4
m(j
String sql; pwA~?$B1
Statement sm = cn.createStatement(); =TA8]7S~U
sm.executeQuery(sql); // 执行数据查询语句(select) 7LiyA<
sm.executeUpdate(sql); // 执行数据更新语句(delete、update、insert、drop等)statement.close(); bj@f<f`
2)用PreparedStatement来执行sql语句 /wi/i*;A
String sql; &_'3(xIO
sql = "insert into user (id,name) values (?,?)"; #`%V/ #YK
PreparedStatement ps = cn.prepareStatement(sql); JHJ]BMm
ps.setInt(1,xxx); D=M'g}l
ps.setString(2,xxx); (bD#PQXzm
... ?BU?c:"f
ResultSet rs = ps.executeQuery(); // 查询 !HF<fn
int c = ps.executeUpdate(); // 更新 8k^1:gt^
~bgM*4GW
3、处理执行结果 r<