作为新手的我,最近在做一个把EXCEL文件内容批量新增导入到数据库的功能
目前我是这样实现的
循环读取EXCEL每一行的数据,然后通过HIBERNATE定义的对象逐行保存到数据库
就是有EXCEL有多少行,就要调用这个保存方法多少次
但我感觉这样操作不大好,万一电脑或服务器发生什么意外
那执行导入的过程就不知道会怎么样了所以我想问各位大虾是怎么做EXCEL导入数据库这些功能的
有什么好的建议尽管分享给小第学习吧,谢谢

解决方案 »

  1.   

    把excel的内容放到一个objects集合里面然后hibernate.save集合
      

  2.   

    能具体点,给个代码看看吗
    你说放到一个OBJECTS集合里面,然后SAVE,这样不用循环执行的吗
    谢谢
      

  3.   

    getHibernateTemplate().bulkUpdate(queryString, values)
      

  4.   

    使用spring的批处理进行导入数据....不过也需要for循环  百度上很多spring批处理的资料 自己找找吧 一般这种的建议使用批处理 效率肯定高于hibernate
      

  5.   

    记录为一个实体类 每行就一个实体类的实例 得到全部的实例的集合
    然后开事务
    循环导入
    出错ROLLBACK
    对的话就COMMIT
      

  6.   

    怎么出错ROLLBACK
    对的话又怎么COMMIT
    在程序代码里怎么做的
      

  7.   

    可以批量插入,但是要注意的是 hibernate save方法执行完后会把该记录放到一级缓存中。所以要手动清除缓存和flush操作!
      

  8.   


    事务你不会用吗?try {}catch{}你不会用吗
      

  9.   


    try{
    commit();
    }catch(){
    }finally {
    rollback();
    }