hibernate导入大量数据时,为了避免内存中产生大量对象,在编码时注意什么,如何去除?

 1 Session session = sessionFactory.openSession();
 2 Transaction tx = session.beginTransaction();
 3 for ( int i=0; i<100000; i++ ) {
 4 Customer customer = new Customer(.....);
 5 session.save(customer);
 6 if ( i % 20 == 0 ) { //20, same as the JDBC batch size
 7 //flush a batch of inserts and release memory:
 8 session.flush();
 9 session.clear();
10 }
11 }
12 tx.commit();
13 session.close();

hibernate导入大量数据时,为了避免内存中产生大量对象,在编码时注意什么,如何去除?

这个问题,我如果我没记错的话,hibarnate官方手册中就说明了,也有demo,你可以查查;

具体的就是

http://zhidao.baidu.com/question/2201283544888578828.html?qbl=relate_question_3

【签名→→→】【****知其然知其所以然****】 工具只能帮助我们解决我们认识到的问题,解决不了我们都没理解的问题。 不能再把一切扔给框架、容器、工具! 首先理解你的业务逻辑,理解你要实现的功能, 然后搞清楚框架、容器、工具会帮助我们做什么。 只有理解了自己的业务逻辑,理解了自己的代码,理解了自己要用到的第三方代码, 才能真正完美地实现我们需要的功能!
原文地址:https://www.cnblogs.com/yaowukonga/p/3453668.html