我的项目解析来自dblp的XML文件,大约1GB保存在ORM数据库中,因此我使用SAXP来读取信息,如(paper'author,paper'infomation ......)。
函数读取正常但是当我使用hibernate将信息保存到数据库时它有错误:“java.lang.OutOfMemoryError:Java heap space”
答案 0 :(得分:1)
您应该对这些大型数据集使用无状态会话。请在jboss website
了解相关信息答案 1 :(得分:0)
从堆栈跟踪看,似乎java.lang.OutOfMemoryError
不是由Hibernate引起的,因为它是在构建SessionFactory
时发生的。
我认为这是由于你要解析的大尺寸XML。您可以通过解析较小的XML来验证它。如果可以保存,则可以隔离问题不是由Hibernate引起的。
您可以使用-Xmx参数增加Vm的最大堆大小,例如:
java -Xmx2048m