首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

ibatis批处理拔高性能

2012-06-29 
ibatis批处理提高性能ibatis循环处理与批处理--以插入操作为例1.循环处理循环操作的ibatis配置!-- 插入一

ibatis批处理提高性能
ibatis循环处理与批处理--以插入操作为例

1.循环处理

循环操作的ibatis配置

<!-- 插入一条记录 -->  <insert id="insertUser" parametername="code">/** * 循环插入一条用户记录 * @throws Exception */public void insertTest() throws Exception{Long oldTime = System.currentTimeMillis();//System.out.println(oldTime);for(int i= 0; i < 10000 ; i++){User user = new User();user.setId(String.valueOf(i));user.setUserName("用户"+ i);user.setPassWord("user"+ i);new UserDaoImpl().insert(user);System.out.println(i);}System.out.println("循环插入多条记录所花费的时间:"+ (System.currentTimeMillis()-oldTime)/1000.00 +"s");}


2.批处理

批处理的ibatis配置

<!-- 插入多条记录 -->  <insert id="insertUserList" parametername="code">/** * 插入多条记录 --快 * @throws Exception */public void insertListTest() throws Exception{Long oldTime = System.currentTimeMillis();//System.out.println(oldTime);List<User> users = new ArrayList<User>();for(int i=0; i< 10000; i++){User user = new User();user.setId(String.valueOf(i));user.setUserName("用户"+ i);user.setPassWord("user"+ i);users.add(user);System.out.println(i);}new UserDaoImpl().insertList(users);System.out.println("一次插入多条记录所花费的时间:"+ (System.currentTimeMillis()-oldTime)/1000.00 +"s");}


从上面的例子能够测试出批处理的性能高于循环处理的性能。对于其他的编辑操作,删除操作以及查询操作都产生一样的结果,在实际的项目中,对于一次需要插入多条数据,应该使用批处理。

热点排行