Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 让应用服务器处理数据库连接池_Java_Hibernate_Database Connection_Connection Pooling - Fatal编程技术网

Java 让应用服务器处理数据库连接池

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">

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">
        <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连接池。我的目标是完全删除服务数据库连接池,并让应用服务器处理它。