hibernate 作批量数据操作心得
?
程序功能:
使用hibernate+spring将oracle数据库中的tfile表中的数据抽取到db2数据库的tfile表,这两个表的结构相同。(原本要使用一些Spring的特性,但是程序改来改去发现Spring特性一个都没用上,实际上完全可以由hibernate创建两个sessionFactory完成)
测试环境:
celeron M 1.4/512M/mysql 5.0数据库
代码:
?public void save() {
Session session2= fileDAO2.getDataSession(); Transaction tx =session2.beginTransaction(); ScrollableResults tFiles = session.createQuery( "from TFile as model ").setCacheMode(CacheMode.IGNORE).scroll(ScrollMode.FORWARD_ONLY); int count=0; while(tFiles.next()) { session2.save(tFiles.get(0)); if(++count%50==0) { session2.flush(); session2.clear(); } } tx.commit(); session.close();??