hibernate中可以从query对象获取connection直接操作数据库
public void setStatus(String arrMsgID[]) {
//sql语句
String updateSql = "UPDATE tb_msgboard SET status ='1' WHERE msgID =?";
//通过session获取事务 和spring整合之后这步并不需要
Transaction ts = session.beginTransaction();
session.doWork(
//实现work接口,work接口中有一个execute方法,connection就是这个方法的参数,也就是在这里获得jdbc的connection
new Work(){
@Override
public void execute(java.sql.Connection connection) throws SQLException {
try {
PreparedStatement stmt = connection.prepareStatement(updateSql);
//这里进行批量操作
for (int i = 0; i < arrMsgID.length; i++) {
stmt.setString(1, arrMsgID[i]);
stmt.addBatch(); // 添加到批处理命令