休眠默认连接池

问题描述:

Hibernate默认使用连接池吗?如果是这样,* connection.pool_size *的默认值是什么? 它不与* hibernate.connection.release_mode *冲突吗?连接池的所有想法都不是关闭连接吗?休眠默认连接池

By default,休眠附带通过适当地设定特性,以获得从JNDI数据源实现(javax.sql.DataSource中)的能力:

默认JNDI连接池MAXSIZE是 - 没有最大大小

在这里您可以找到JNDI池的默认值。

http://docs.oracle.com/javase/jndi/tutorial/ldap/connect/config.html

为了得到高效的性能,您应该使用以获得最佳性能和稳定性third party pool

如果您正在使用应用程序服务器,您可能希望使用内置池(通常使用JNDI获取连接)。如果你不能或者不想使用你的应用程序服务器的内置连接池,Hibernate支持其他几个连接池如

  • C3P0

  • 的Apache DBCP

  • Proxool的

http://www.informit.com/articles/article.aspx?p=353736&seqNum=4

+0

这我知道,我的问题是什么是默认行为?没有任何关于连接池的配置。 – AdiB

+0

查看我的更新回答。 –

+0

这不回答这个问题。 –

默认的hibernate连接池(不应在生产中使用)的默认限制为1,因为它只是用于简单测试。然而,这可以通过hibernate.properties文件进行配置,因此值得检查一下,看它是否在你的项目中定义。

这些财产是:

hibernate.connection.pool_size即可

这方面的信息主要是包含在此链接:

http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/session-configuration.html

尽管这并不直接指定默认的连接池大小,它在hibernate中的连接池主题上提供了大部分信息。

+1

请您分享hibernate.connection.pool_size = 1的默认大小来源,就像您在上面的链接中所说的那样。 – Max