`

hibernate利用dowork实现批量修改

阅读更多
public int[] dowork(final List<User> list) {
		final List<int[]> results = new ArrayList<int[]>();
		getSession().doWork(new Work(){
			public void execute(Connection connection) throws SQLException {
				final String sql="update test_user set user_name=? where id=?";
				PreparedStatement p = connection.prepareStatement(sql);
				for(int i=0;i<list.size();i++) {
					System.out.println(list.get(i).getUserName()+"---"+list.get(i).getId());
					p.setString(1, list.get(i).getUserName()+i);
					p.setInt(2, list.get(i).getId());
					p.addBatch();
				}
				results.add(p.executeBatch());
			}
		});
		return results.get(0);
	}

 

分享到:
评论

相关推荐

    hibernate中session对象的状态详解

    hibernate中session对象的状态详解

    全面掌握 Hibernate 框架技术

    查询操作(主键查询、HQL查询、Criteria查询、SQL查询、命名查询、doWork) 关联关系:多对一、一对多、多对多、一对一 组件映射、继承映射、缓存、JPA 反向工程、封装GenericDao 教学全程采用笔记+代码案例的形式...

    软件测试白盒测试

    用逻辑覆盖测试方法测试以下程序段 ...void DoWork (int x,int y,int z){ 1 int k=0, j=0; 2 if ( (x&gt;3)&&(z) ) 3 { 4 k=x*y-1; 5 j=sqrt(k); 6 } 7 if((x==4)||(y&gt;5)) 8 j=x*y+10; 9 j=j%3; 10 }

    WCF(C#源码)一共两个

    WCF的源码。。。。。。。。。。。。。。。。。。。。。。。。。。。

    JPA全面讲解

    JPA全面讲解,这是一个很全面的例子,值得学习

    Android ProgressBar 简单进度条的实现及示例下载.rar

    此为Android ProgressBar 简单进度条的实现及示例下载源码,基本思路是:将模拟任务分成大小为100个的数组,任务完成度--默认为0,状态完成度默认也为0,然后构造一个线程用于显示消息,然后定义dowork()函数,完成...

    文件切割器 文件合并器

    API开放:程序开放了三个API,分别为FileX.DoWork.Divide、FileX.DoWork.CombineByFirst、FileX.DoWork.CombineByList。这些API可供您编程时调用,以便让您更快捷地实现您的需要的功能 本程序基于.NET Framework ...

    WinForm进度条的2种异步实现方式

    注意确保在 DoWork 事件处理程序中不操作任何用户界面对象。而应该过 ProgressChanged 和 RunWorkerCompleted 事件与用户界面进行通信。 它有几个主要属性: CancellationPending——指示应用程序是否已请求取消...

    C++实现线程池

    /** 用法原理:通过派生类WorkItemBase的dowork方法来实现,线程处理任务 通过create任务创建线程,并且这些线程一直在for循环里等待事件监听 一旦任务栈里有数据了触发线程执行任务。 **/

    一个VC多线程的例子

    这是一个VC多线程编程的例子,总共四个程序,内附详细说明。

    Android修改源码让APP获取root权限可以执行su命令的git diff记录

    修改源码让APP获取root权限可以执行su命令的git diff记录

    软件测试实验作业题目5道 湖北经济

    实验2 黑盒测试实验准备 ...void DoWork (int x,int y,int z) { int k=1,j=1; if ((x&gt;3)&&(y&gt;1)&&(z)) { k=x*y-1; j=sqrt(k); } if ((x==3)||(y&gt;4)) { j=x*y+10; } j=j%5; } 代码+报告

    c#使用命名管道实现打印调试

    backgroundWorker.DoWork += new DoWorkEventHandler(backgroundWorker_DoWork); backgroundWorker.ProgressChanged += new ProgressChangedEventHandler(backgroundWorker_ProgressChanged); backgroundWorker....

    C#基于委托实现多线程之间操作的方法

    本文实例讲述了C#基于委托实现多线程之间操作的方法。分享给大家供大家参考,具体如下: 有的时候我们要起多个线程,更多的时候可能会有某个线程会去操作其他线程里的属性。 但是线程是并发的,一般的调用是无法实现...

    如何在WorkManager中处理异步任务详解

    我们知道,在 WorkManager 中,处理任务的方式是创建一个继承自 Worker 的任务类,实现 doWork() 方法,并在这个方法中实现我们自己的任务,然后返回 Result.success() 或 Result.failure() 来表示任务执行成功或者...

    让windows定时提醒你,windows服务编程相关

    void CMyWork::DoWork() { //此函数会被每隔1秒调用一次 m_nCount++; if (m_nCount&gt;3600) { m_nCount=0; ::MessageBox(NULL,"主人您好,您已经坚持工作一个小时了,注意保护好眼睛!", "CSDN 会员henry...

    白盒测试用例练习.docx

    白盒测试用例练习

    软件测试实验报告(非常详细)

    软件测试实训报告,包含白盒测试、黑盒测试。

    讲故事谈.NET委托一个C#睡前故事

    从前,在南方一块奇异的土地上,有...)“回调”他的老板来实现他的承诺,如下: class Worker { public void Advise(Boss boss) { _boss = boss; } public void DoWork() { Console.WriteLine(“工作: 工作开始”);

    cpu- z测试

    cpu- z测试 检测电脑很好用最新汉化版值得拥有 对于小白很好

Global site tag (gtag.js) - Google Analytics