sql >> データベース >  >> RDS >> PostgreSQL

java.sql.SQLException:接続はすでに閉じられています

    次の構成は私のために働いた

    <Context context="ROOT" debug="0" reloadable="false" useHttpOnly="true" cacheMaxSize="40960" cacheTTL="60000" cachingAllowed="true" antiJARLocking="true">
        <Resource name="XYZ" auth="Container"
                description="Exchange DB Connection"
                dataSourceClassName="org.postgresql.ds.PGSimpleDataSource"
                dataSource.serverName="XXXXX"
                dataSource.databaseName="XXXX"
                dataSource.portNumber="XXXX"
                dataSource.user="xyz"
                dataSource.password="xyz"
                maximumPoolSize="20"
                minimumIdle="5"
                connectionTimeout="300000"
                factory="com.zaxxer.hikari.HikariJNDIFactory"
                registerMbeans="true"
                type="javax.sql.DataSource" />
    

    ここでの重要な値はconnectionTimeoutです 。現在使用しているファクトリにはデフォルトのタイムアウトがあり、その後はセッションが強制的に閉じられます。

    上記の接続タイムアウト値は私にとってはうまくいきました。アプリケーションシナリオでは、適切な値を取得するために少し実験する必要があります。



    1. SQL Serverに相当するOracleには、インデックスを作成するための列が含まれていました

    2. PLS-00103:シンボルCREATEに遭遇しました

    3. socket.ionode.jsと着信メッセージを使用した通知システムのアーキテクチャの実装と設計

    4. NUMBER_ARRAYのpreparedStatement設定nullが機能しない