JDBC知识 - 马士兵视频教程笔记

本文介绍了JDBC中的PreparedStatement和CallableStatement使用方法,探讨了批处理操作和事务管理的实现方式,并对比了DriverManager与DataSource的不同特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PreparedStatement: 可以灵活指定SQL语句中的变量


CallableStatement: Java调用存储过程


批处理:

st = conn.createStatement();
st.addBatch("insert into dept2 values (21, 'Game1', 'BJ')");
st.addBatch("insert into dept2 values (22, 'Game2', 'SH')");
st.addBatch("insert into dept2 values (23, 'Game3', 'SH')");
st.addBatch("insert into dept2 values (24, 'Game4', 'FJ')");
st.executeBatch();
st.close();


pst =  conn.prepareStatement("insert into dept2 values (?,?,?)");
pst.setInt(1, 61);
pst.setString(2, "Software");
pst.setString(3, "TJ");
pst.addBatch();

pst.setInt(1, 66);
pst.setString(2, "BigData");
pst.setString(3, "TJ");
pst.addBatch();

pst.executeBatch();
pst.close();


Transaction:

如何一条DML语句,执行的时候会自动提交,因为设置是否自动提交的语句默认情况下为真:conn.SetAutoCommit(true);

conn.setAutoCommit(false);
st = conn.createStatement();
st.addBatch("insert into dept2 values (66, 'BI', 'Shanghai')");
st.addBatch("insert into dept2 values (99, 'ES', 'Shanghai')");
st.executeBatch();
conn.commit();
conn.setAutoCommit(true);

catch到任何SQLException,记得rollback并设置conn.setAutoCommit(true);


DataSource

DriverManager的替代

连接池实现

分布式实现

DataSource的属性可以动态改变


RowSet

新的ResultSet

从ResultSet继承

支持断开的结果集

支持JavaBeam


如何掌握JDBC?

记住常用各种类型程序段

将程序处理完善

JDBC初步

DML

Transaction

DataSource & RowSet


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值