Java 让应用服务器处理数据库连接池
Im使用JNDI作为我们的应用服务器(websphere)中定义的数据源,并将其配置为管理db连接池。我在该服务器上部署了一个服务,它还根据下面的配置定义了db连接池Java 让应用服务器处理数据库连接池,java,hibernate,database-connection,connection-pooling,Java,Hibernate,Database Connection,Connection Pooling,Im使用JNDI作为我们的应用服务器(websphere)中定义的数据源,并将其配置为管理db连接池。我在该服务器上部署了一个服务,它还根据下面的配置定义了db连接池 <?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0"> <persistence-unit name="test">
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
<persistence-unit name="test">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.c3p0.min_size" value="1"/>
<property name="hibernate.c3p0.max_size" value="10"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.ejb.autodetection" value="hbm"/>
<property name="hibernate.use_sql_comments" value="true"/>
</properties>
</persistence-unit>
</persistence>
org.hibernate.ejb.HibernatePersistence
现在,我的目标是完全删除服务上的db连接池管理,并让应用程序服务处理它。如果我删除两个c3p0条目,这是否意味着服务内部没有发生db连接池,并且所有连接池都由应用程序服务器管理
我对这类事情还不熟悉,非常感谢您的意见或参考。谢谢
[更新1]
From“如果设置了Hibernate.c3p0.*属性,Hibernate将默认使用此选项。”
基于上述xml,我已经删除了默认池。现在,如果我没有在服务上定义任何池提供者,那么我基本上删除了服务上的池,对吗?我觉得这是一个愚蠢的问题,但请确认这是否正确。谢谢:)你说的“让服务器处理连接池”是什么意思?我的意思是让JNDI在服务器中设置来管理连接池,目标数据库是什么?!我希望它不是M$-SQL。你所说的服务器是什么意思?你是指应用服务器(运行时)还是数据库服务器?!让db服务器管理池并不是一种非常优化的方式,因为您也错过了运行时管理和池,关于应用服务器我也不知道,因为池的形式不同,但通常应用服务器管理池和JNDI。@user251414不幸的是MS-SQL。应用服务器。。。我们的组织正在使用Websphere,他们在那里定义了JNDI来处理数据库连接池。部署在WebSphereServer中的服务还定义了自己的db连接池。我的目标是完全删除服务数据库连接池,并让应用服务器处理它。