java - JBoss/WildFly 连接池和关闭连接

标签 java oracle jboss connection-pooling wildfly

我有一些应用程序在 JBoss 4.2.2、JBoss 5.1 和 WildFly 8.1.0 上运行。所有这些应用程序都使用连接池。我的数据源是这样的:

<datasource jta="false" jndi-name="java:/datasource/myawesomeds" pool-name="MyAwesomeDS" enabled="true" use-ccm="false">
    <connection-url>jdbc:oracle:thin:@myserver.example.com:1521:oracle_service</connection-url>
    <driver-class>oracle.jdbc.OracleDriver</driver-class>
    <driver>ojdbc6.jar</driver>
    <security>
        <user-name>username</user-name>
        <password>MyPassWord</password>
    </security>
    <validation>
        <validate-on-match>false</validate-on-match>
        <background-validation>false</background-validation>
    </validation>
    <statement>
        <share-prepared-statements>false</share-prepared-statements>
    </statement>
</datasource>

如您所见,我使用 Oracle 数据库。服务器版本是10g。当 Oracle DB 宕机几分钟时,我在 JBoss 和 WildFly 上的所有应用程序都开始显示 SQLException: Closed Connection。

我的问题:这正常吗?为什么 JBoss 和 WildFly 不检查连接来验证这一点?

最佳答案

是的,这是正常的。

但是,您可以定义 wildfly/jboss 在从连接池获取连接时应验证连接。您的所有连接都将无效,因此如果您定义了应存在的最小连接数,通常它应该为您创建一个新连接。

关于java - JBoss/WildFly 连接池和关闭连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26161279/

相关文章:

mysql - 如何编写通过外键的 SQL 查询

wcf - 与 JBoss/tomcat 和 HTTP.sys 共享端口?

java - Jsp 编译不是用 jboss 即时进行的

java - 将多个数组列表连接到一个数组列表

java - 如何在JAVA中一次传递一个类的两个单独实例来对该类中的一些数据进行排序

java - 如何在 Hibernate 中持久化 Map<String, List<Object>>

JBoss:InterceptorRegistry 发出的警告 EJBTHREE-1246 是什么意思?

Java:在资源中存储一张大 map

sql - 如果 MV 使用 ASNI Join,查询重写会失败

sql - oracle pl/sql ORA-01790 : expression must have same datatype as corresponding expression