是否可以序列化hibernate EntitiyManagerFactory?

时间:2012-04-23 21:36:57

标签: java hibernate jpa

我有一个使用hibernate的项目,启动时间很长,我想知道是否可以序列化EntitiyManagerFactory,因此只有第一次启动会很慢。

1 个答案:

答案 0 :(得分:2)

可以在hibernate中序列化(在其他JPA实现中不一定如此),因为hibernate内部接口扩展了Serializable。但这是供内部使用的,可能是应用服务器能够以某种方式钝化它。

您的问题出在其他地方,不应该通过序列化实体管理器工厂来解决。通常在启动时,它会创建一个连接池并使用新的数据库连接填充它。并且你不能序列化这些连接,所以如果你这样做会出现一大堆新问题。

相反,确保数据库及时响应(如果没有 - 它正在减慢池的填充速度),以及您的启动是否真的那么慢。 30秒慢,5分钟可能会很慢,具体取决于应用程序的大小。