使用「編輯連線集區進階屬性」頁面可指定能幫助診斷連線洩漏和改善簡易操作性的屬性。
「編輯連線集區進階屬性」頁面包含下列選項。
用於將具有預設值的設定復原為設定值的按鈕。沒有預設值的設定則保持不變。
連線集區的名稱。名稱是唯讀欄位。您僅能在建立新的 JDBC 連線集區時指定連線集區名稱。
終止執行時間過長的查詢之前,等待的時間長度 (以秒為單位)。GlassFish Server 將對建立的敘述句設定 QueryTimeout
。值 -1 表示停用該選項。預設值為 -1。
要使用 LRU (近來最少使用) 快取機制快取的敘述句數目。0 值會停用敘述句快取。預設值為 0。
每當在集區中建立連線時會執行的 SQL 字串 (不重複使用)。執行此字串會初始化連線狀態。
以逗號分隔的監聽器實行類別名稱清單,會指定追蹤應用程式執行的 SQL 敘述句。監聽器類別必須實行 org.glassfish.api.jdbc.SQLTraceListener
介面。使用監聽器能讓您針對 SQL 敘述句輕鬆篩選日誌訊息,且能幫助管理員分析敘述句。
若啟用此選項,應用程式將會取得 Statement、PreparedStatement、CallableStatement、ResultSet、DatabaseMetaData 的包裝 JDBC 物件。此選項預設為啟用。
針對集區啟用連線集區管理。此選項預設為啟用。
指定連續請求驗證連線的最長時間間隔 (以秒為單位)。將此屬性設定為適當值,可將驗證連線請求的數目減至最小。預設值為 0,表示未啟用此屬性。
追蹤連線集區中連線洩漏的時間 (以秒為單位)。使用此欄位可偵測應用程式造成的潛在連線洩漏。若應用程式未於指定期間內將連線傳回集區,則會假設連線可能發生錯誤,並會記錄呼叫者的堆疊追蹤。0 值表示已停用連線洩漏追蹤。預設值為 0。
將此欄位與「錯誤收回」欄位配合使用,可避免應用程式造成的潛在連線洩漏。
若啟用此選項,則在錯誤連線追蹤完成之後,會將錯誤的連線復原至連線集區中。此選項預設為停用。
追蹤連線集區中敘述句漏失的時間長度 (以秒為單位)。使用此欄位可偵測應用程式造成的潛在敘述句漏失。若應用程式未於指定期間內將敘述句傳回集區,則會假設敘述句可能漏失,並會記錄呼叫者的堆疊追蹤。值 0 表示停用敘述句漏失追蹤。預設值為 0。
將此欄位與「敘述句漏失收回」配合使用,可避免應用程式造成的潛在連線洩漏。
若啟用此選項,則在漏失敘述句追蹤完成之後,會將漏失的敘述句復原至連線集區中。此選項預設為停用。
在建立新連線失敗之後,將進行的嘗試次數。值 0 表示不會再次嘗試建立連線。預設值為 0。
兩次嘗試建立連線之間的時間間隔 (以秒為單位)。預設值為 10。僅當「建立重新嘗試次數」的值大於 0 時,才使用該屬性。
若啟用此選項,僅當使用連線時,才會將實體連線與邏輯集合關聯。當作業事件完成且元件方法結束時,這些連線便會取消關聯,從而可以重複使用實體連線。此選項預設為停用。
若啟用此選項,僅當資源在方法中實際使用時,才會將該資源加入作業事件。此選項預設為停用。
若啟用此選項,將建立連線與繫線之間的關聯,這樣當相同的繫線需要連線時,便可重複使用已與該繫線相關聯的連線,而省下從集區中取得連線的經常性耗用時間。此選項預設為停用。
若啟用此選項,會將從集區中選取的連線與具有特定憑證的連線加以比對。如果連線集區是供具有多個使用者憑證的應用程式使用,則必須啟用此選項。您可以在以下情況下安全地停用此選項:管理員知道集區中的連線一定是同質連線,因此不需要資源轉接器對從集區中挑選的連線進行比對。此選項預設為停用。
連線集區應重複使用連線的次數。重複使用指定次數的連線後,就會關閉連線。您可以透過限制連線可重複使用的次數,避免在應用程式未關閉敘述句時,發生敘述句錯誤。值 0 表示停用此屬性。預設值為 0。
若啟用此選項,則需要驗證連線,以在失敗時允許伺服器重新連線。
GlassFish Server 可使用以下方法驗證資料庫連線。
auto-commit
和 metadata
GlassFish Server 會透過呼叫 con.getAutoCommit
或 con.getMetaData
方法驗證連線。
備註:
許多 JDBC 驅動程式會快取這些呼叫的結果。因此,使用這些呼叫不一定能提供可靠的驗證。請洽詢驅動程式供應商,以確定這些呼叫是否會被快取。custom-validation
GlassFish Server 會使用「驗證類別名稱」欄位中的自訂實行類別所指定的使用者定義驗證機制。
table
應用程式會查詢指定的資料庫表格。此表格必須存在並且可以存取,但不要求表格的列數。請勿使用包含許多列的現有表格或經常存取的表格。
用於驗證的資料庫表格名稱。只有在「驗證方法」設為 table
時,才可使用此欄位。您可以從下拉式清單中選取名稱,或鍵入名稱。
自訂驗證實行類別名稱。只有在「驗證方法」設為 custom-validation
時,才可使用此欄位。GlassFish Server 必須可以存取提供的類別名稱。指定的類別必須實行 org.glassfish.api.jdbc.ConnectionValidation
介面。您可以從下拉式清單中選取名稱,或鍵入名稱。
若啟用此選項,則在任何連線失敗時,GlassFish Server 會關閉集區中的所有連線並重新建立連線。若停用此選項,則僅會在使用連線時重新建立個別連線。此選項預設為停用。
若啟用此選項,則非元件呼叫者 (例如 Servlet 篩選與第三方持續性管理員) 可使用集區。非元件呼叫者所取得的連線,不會在作業事件結束時由容器自動關閉。這些連線必須由呼叫者明確地關閉。此選項預設為停用。