黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Tomca教程
Tomcat Manager
Tomcat Realm 配置
Tomcat 安全管理
Tomcat JNDI 資源
Tomcat JDBC 數(shù)據(jù)源
Tomcat 類加載機(jī)制
Tomcat JSPs
Tomcat SSL/TLS配置
Tomcat SSI
Tomcat CGI
Tomcat 代理支持
Tomcat MBean 描述符
Tomcat 默認(rèn) Servlet
Tomcat 集群
Tomcat 連接器
Tomcat監(jiān)控與管理
Tomcat 日志機(jī)制
Tomcat 基于 APR 的原生庫
Tomcat 虛擬主機(jī)
Tomcat 高級 IO 機(jī)制
Tomcat 附加組件
Tomcat 安全性注意事項
Tomcat Windows 服務(wù)
Tomcat Windows 認(rèn)證
Tomcat 的 JDBC 連接池
Tomcat WebSocket 支持
Tomcat 重寫機(jī)制

JDBC連接池的屬性

為了能夠順暢地在 Commons DBCP 與 Tomcat JDBC 連接池 之間轉(zhuǎn)換,大多數(shù)屬性名稱及其含義都是相同的。

1. JNDI 工廠與類型

屬性

描述

factory

必需的屬性,其值應(yīng)為 org.apache.tomcat.jdbc.pool.DataSourceFactory

type

類型應(yīng)為 javax.sql.DataSource 或 javax.sql.XADataSource。
根據(jù)類型,將創(chuàng)建org.apache.tomcat.jdbc.pool.DataSource 或 org.apache.tomcat.jdbc.pool.XADataSource。

2. 系統(tǒng)屬性

系統(tǒng)屬性作用于 JVM 范圍,影響創(chuàng)建于 JVM 內(nèi)的所有池。

屬性

描述

org.apache.tomcat.jdbc.pool.onlyAttemptCurrentClassLoader

布爾值,默認(rèn)為 false。控制動態(tài)類(如JDBC 驅(qū)動、攔截器、驗證器)的加載。如果采用默認(rèn)值,池會首先利用當(dāng)前類加載器(比如已經(jīng)加載池類的類加載器)加載類;如果類加載失敗,則嘗試?yán)镁€程上下文加載器加載。取值為 true 時,會向后兼容 Apache Tomcat 8.0.8 及更早版本,只會采用當(dāng)前類加載器。如果未設(shè)置,則取默認(rèn)值。

3. 常用屬性

屬性

描述

defaultAutoCommit

(布爾值)連接池所創(chuàng)建的連接默認(rèn)自動提交狀態(tài)。如果未設(shè)置,則默認(rèn)采用 JDBC 驅(qū)動的缺省值(如果未設(shè)置,則不會調(diào)用 setAutoCommit 方法)。

defaultReadOnly

(布爾值)連接池所創(chuàng)建的連接默認(rèn)只讀狀態(tài)。如果未設(shè)置,將不會調(diào)用 setReadOnly 方法。(有些驅(qū)動并不支持只讀模式,比如:informix)

defaultTransactionIsolation

(字符串)連接池所創(chuàng)建的連接的默認(rèn)事務(wù)隔離狀態(tài)。取值范圍為:(參考 javadoc)

·  NONE

·  READ_COMMITTED

·  READ_UNCOMMITTED

·  REPEATABLE_READ

·  SERIALIZABLE


如果未設(shè)置該值,則不會調(diào)用任何方法,默認(rèn)為 JDBC 驅(qū)動。

defaultCatalog

(字符串)連接池所創(chuàng)建的連接的默認(rèn)catalog。

driverClassName

(字符串)所要使用的 JDBC 驅(qū)動的完全限定的 Java 類名。該驅(qū)動必須能從與 tomcat-jdbc.jar 同樣的類加載器訪問

username

(字符串)傳入 JDBC 驅(qū)動以便建立連接的連接用戶名。注意,DataSource.getConnection(username,password) 方法默認(rèn)不會使用傳入該方法內(nèi)的憑證,但會使用這里的配置信息。可參看 alternateUsernameAllowed 了解更多詳情。

password

(字符串)傳入 JDBC 驅(qū)動以便建立連接的連接密碼。注意,DataSource.getConnection(username,password) 方法默認(rèn)不會使用傳入該方法內(nèi)的憑證,但會使用這里的配置信息。可參看 alternateUsernameAllowed 了解更多詳情。

maxActive

(整形值)池同時能分配的活躍連接的最大數(shù)目。默認(rèn)為 100。

maxIdle

(整型值)池始終都應(yīng)保留的連接的最大數(shù)目。默認(rèn)為 maxActive:100。會周期性檢查空閑連接(如果啟用該功能),留滯時間超過 minEvictableIdleTimeMillis 的空閑連接將會被釋放。(請參考 testWhileIdle)

minIdle

(整型值)池始終都應(yīng)保留的連接的最小數(shù)目。如果驗證查詢失敗,則連接池會縮減該值。默認(rèn)值取自 initialSize:10(請參考 testWhileIdle)。

initialSize

(整型值)連接器啟動時創(chuàng)建的初始連接數(shù)。默認(rèn)為 10。

maxWait

(整型值)在拋出異常之前,連接池等待(沒有可用連接時)返回連接的最長時間,以毫秒計。默認(rèn)為 30000(30 秒)

testOnBorrow

(布爾值)默認(rèn)值為 false。從池中借出對象之前,是否對其進(jìn)行驗證。如果對象驗證失敗,將其從池中清除,再接著去借下一個。注意:為了讓 true 值生效,validationQuery 參數(shù)必須為非空字符串。為了實現(xiàn)更高效的驗證,可以采用 validationInterval。

testOnReturn

(布爾值)默認(rèn)值為 false。將對象返回池之前,是否對齊進(jìn)行驗證。注意:為了讓 true 值生效,validationQuery 參數(shù)必須為非空字符串。

testWhileIdle

(布爾值)是否通過空閑對象清除者(如果存在的話)驗證對象。如果對象驗證失敗,則將其從池中清除。注意:為了讓 true 值生效,validationQuery 參數(shù)必須為非空字符串。該屬性默認(rèn)值為 false,為了運行池的清除/測試線程,必須設(shè)置該值。(另請參閱 timeBetweenEvictionRunsMillis)

validationQuery

(字符串)在將池中連接返回給調(diào)用者之前,用于驗證這些連接的 SQL 查詢。如果指定該值,則該查詢不必返回任何數(shù)據(jù),只是不拋出 SQLException 異常。默認(rèn)為 null。實例值為:SELECT 1(MySQL) select 1 from dual(Oracle) SELECT 1(MySQL Server)。

validationQueryTimeout

(整型值)連接驗證失敗前的超時時間(以秒計)。通過在執(zhí)行 validationQuery 的語句上調(diào)用 java.sql.Statement.setQueryTimeout(seconds) 來實現(xiàn)。池本身并不會讓查詢超時,完全是由 JDBC 來強(qiáng)制實現(xiàn)。若該值小于或等于 0,則禁用該功能。默認(rèn)為 -1。

validatorClassName

(字符串)實現(xiàn) org.apache.tomcat.jdbc.pool.Validator 接口并提供了一個無參(可能是隱式的)構(gòu)造函數(shù)的類名。如果指定該值,將通過該類來創(chuàng)建一個 Validator 實例來驗證連接,代替任何驗證查詢。默認(rèn)為 null,范例值為:com.mycompany.project.SimpleValidator。

timeBetweenEvictionRunsMillis

(整型值)空閑連接驗證/清除線程運行之間的休眠時間(以毫秒計)。不能低于 1 秒。該值決定了我們檢查空閑連接、廢棄連接的頻率,以及驗證空閑連接的頻率。默認(rèn)為 5000(5 秒)

numTestsPerEvictionRun

(整型值)Tomcat JDBC 連接池沒有用到這個屬性。

minEvictableIdleTimeMillis

(整型值)在被確定應(yīng)被清除之前,對象在池中保持空閑狀態(tài)的最短時間(以毫秒計)。默認(rèn)為 60000(60 秒)

accessToUnderlyingConnectionAllowed

(布爾值)沒有用到的屬性。可以在歸入池內(nèi)的連接上調(diào)用 unwrap來訪問。參閱 javax.sql.DataSource 接口的相關(guān)介紹,或者通過反射調(diào)用 getConnection,或者將對象映射為 javax.sql.PooledConnection。

removeAbandoned

(布爾值)該值為標(biāo)志(Flag)值,表示如果連接時間超出了 removeAbandonedTimeout,則將清除廢棄連接。如果該值被設(shè)置為 true,則如果連接時間大于 removeAbandonedTimeout,該連接會被認(rèn)為是廢棄連接,應(yīng)予以清除。若應(yīng)用關(guān)閉連接失敗時,將該值設(shè)為 true 能夠恢復(fù)該應(yīng)用的數(shù)據(jù)庫連接。另請參閱 logAbandoned。默認(rèn)值為 false。

removeAbandonedTimeout

(整型值)在廢棄連接(仍在使用)可以被清除之前的超時秒數(shù)。默認(rèn)為 60(60 秒)。應(yīng)把該值設(shè)定為應(yīng)用可能具有的運行時間最長的查詢。

logAbandoned

(布爾值)標(biāo)志能夠針對丟棄連接的應(yīng)用代碼,進(jìn)行堆棧跟蹤記錄。由于生成堆棧跟蹤,對廢棄連接的日志記錄會增加每一個借取連接的開銷。默認(rèn)為 false

connectionProperties

(字符串)在建立新連接時,發(fā)送給 JDBC 驅(qū)動的連接屬性。字符串格式必須為:[propertyName=property;]*。注意:user 與 password 屬性會顯式傳入,因此這里并不需要包括它們。默認(rèn)為 null。

poolPreparedStatements

(布爾值)未使用的屬性

maxOpenPreparedStatements

(整型值)未使用的屬性

4. Tomcat JDBC 增強(qiáng)屬性

屬性

描述

initSQL

字符串值。當(dāng)連接第一次創(chuàng)建時,運行的自定義查詢。默認(rèn)值為 null。

jdbcInterceptors

字符串。繼承自類 org.apache.tomcat.jdbc.pool.JdbcInterceptor 的子類類名列表,由分號分隔。關(guān)于格式及范例,可參見下文的配置 JDBC 攔截器。

這些攔截器將會插入到 java.sql.Connection 對象的操作隊列中。

預(yù)定義的攔截器有:

·  org.apache.tomcat.jdbc.pool.interceptor

·  ConnectionState——記錄自動提交、只讀、catalog以及事務(wù)隔離級別等狀態(tài)。

·  org.apache.tomcat.jdbc.pool.interceptor

·  StatementFinalizer——記錄打開的語句,并當(dāng)連接返回池后關(guān)閉它們。



有關(guān)更多預(yù)定義攔截器的詳盡描述,可參閱JDBC 攔截器

validationInterval

長整型值。為避免過度驗證而設(shè)定的頻率時間值(以秒計)。最多以這種頻率運行驗證。如果連接應(yīng)該進(jìn)行驗證,但卻沒能在此間隔時間內(nèi)得到驗證,則會重新對其進(jìn)行驗證。默認(rèn)為 30000(30 秒)。

jmxEnabled

布爾值。是否利用 JMX 注冊連接池。默認(rèn)為 true。

fairQueue

布爾值。假如想用真正的 FIFO 方式公平對待 getConnection 調(diào)用,則取值為 true。對空閑連接列表將采用 org.apache.tomcat.jdbc.pool.FairBlockingQueue 實現(xiàn)。默認(rèn)值為 true。如果想使用異步連接獲取功能,則必須使用該標(biāo)志。
設(shè)置該標(biāo)志可保證線程能夠按照連接抵達(dá)順序來接收連接。
在性能測試時,鎖及鎖等待的實現(xiàn)方式有很大差異。當(dāng) fairQueue=true 時,根據(jù)所運行的操作系統(tǒng),存在一個決策過程。假如系統(tǒng)運行在 Linux 操作系統(tǒng)(屬性 os.name = linux)上,為了禁止這個 Linux 專有行為,但仍想使用公平隊列,那么只需在連接池類加載之前,將 org.apache.tomcat.jdbc.pool.FairBlockingQueue.ignoreOS=true 添加到系統(tǒng)屬性上。

abandonWhenPercentageFull

整型值。除非使用中連接的數(shù)目超過 abandonWhenPercentageFull 中定義的百分比,否則不會關(guān)閉并報告已廢棄的連接(因為超時)。取值范圍為 0-100。默認(rèn)值為 0,意味著只要達(dá)到 removeAbandonedTimeout,就應(yīng)關(guān)閉連接。

maxAge

長整型值。連接保持時間(以毫秒計)。當(dāng)連接要返回池中時,連接池會檢查是否達(dá)到 now - time-when-connected > maxAge 的條件,如果條件達(dá)成,則關(guān)閉該連接,不再將其返回池中。默認(rèn)值為 0,意味著連接將保持開放狀態(tài),在將連接返回池中時,不會執(zhí)行任何年齡檢查。

useEquals

布爾值。如果想讓 ProxyConnection 類使用 String.equals,則將該值設(shè)為 true;若想在對比方法名稱時使用 ==,則應(yīng)將其設(shè)為 false。該屬性不能用于任何已添加的攔截器中,因為那些攔截器都是分別配置的。默認(rèn)值為 true。

suspectTimeout

整型值。超時時間(以秒計)。默認(rèn)值為 0。
類似于 removeAbandonedTimeout,但不會把連接當(dāng)做廢棄連接從而有可能關(guān)閉連接。如果 logAbandoned 設(shè)為 true,它只會記錄下警告。如果該值小于或等于 0,則不會執(zhí)行任何懷疑式檢查。如果超時值大于 0,而連接還沒有被廢棄,或者廢棄檢查被禁用時,才會執(zhí)行懷疑式檢查。如果某個連接被懷疑到,則記錄下 WARN 信息并發(fā)送一個 JMX 通知。

rollbackOnReturn

布爾值。如果 autoCommit==false,那么當(dāng)連接返回池中時,池會在連接上調(diào)用回滾方法,從而終止事務(wù)。默認(rèn)值為 false。

commitOnReturn

布爾值。如果 autoCommit==false,那么當(dāng)連接返回池中時,池會在連接上調(diào)用提交方法,從而完成事務(wù);如果 rollbackOnReturn==true,則忽略該屬性。默認(rèn)值為 false。

alternateUsernameAllowed

布爾值。出于性能考慮,JDBC 連接池默認(rèn)會忽略 DataSource.getConnection(username,password)調(diào)用,只返回之前池化的具有全局配置屬性 username 和 password的連接。

但經(jīng)過配置,連接池還可以允許使用不同的憑證來請求每一個連接。為了啟用這項在DataSource.getConnection(username,password)調(diào)用中描述的功能,只需將 alternateUsernameAllowed 設(shè)為 true。
如果你請求一個連接,憑證為 user 1/password 1,而連接之前使用的是 user 2/password 2 憑證,那么連接將被關(guān)閉,重新利用請求的憑證來開啟。按照這種方式,池的容量始終以全局級別管理,而不是限于模式(schema)級別。
默認(rèn)值為 false。
該屬性作為一個改進(jìn)方案,被添加到了 bug 50025 中。

dataSource

(javax.sql.DataSource)將數(shù)據(jù)源注入連接池,從而使池利用數(shù)據(jù)源來獲取連接,而不是利用 java.sql.Driver 接口來建立連接。它非常適于使用數(shù)據(jù)源(而非連接字符串)來池化 XA 連接或者已建立的連接時。默認(rèn)值為 null。

dataSourceJNDI

字符串。在 JNDI 中查找的數(shù)據(jù)源的 JNDI 名稱,隨后將用于建立數(shù)據(jù)庫連接。參看 datasource 屬性的介紹。默認(rèn)值為 null。

useDisposableConnectionFacade

布爾值。如果希望在連接上放上一個門面對象,從而使連接在關(guān)閉后無法重用,則要將值設(shè)為 true。這能防止線程繼續(xù)引用一個已被關(guān)閉的連接,并繼續(xù)在連接上查詢。默認(rèn)值為 true。

logValidationErrors

布爾值。設(shè)為 true 時,能將驗證階段的錯誤記錄到日志文件中,錯誤會被記錄為 SEVERE。考慮到了向后兼容性,默認(rèn)值為 false。

propagateInterruptState

布爾值。傳播已中斷的線程(還沒有清除中斷狀態(tài))的中斷狀態(tài)。考慮到了向后兼容性,默認(rèn)值為 false。

ignoreExceptionOnPreLoad

布爾值。在初始化池時,是否忽略連接創(chuàng)建錯誤。取值為 true時表示忽略;設(shè)為 false 時,拋出異常,從而宣告池初始化失敗。默認(rèn)值為 false。

全部教程
主站蜘蛛池模板: 手机在线成人精品视频网 | 久操视频在线观看免费 | 黄色观看| 小明免费视频一区二区 | 99视频免费在线观看 | 欧美a在线| 国产婷婷一区二区三区 | 一级a级国产不卡毛片 | 日韩免费精品视频 | 欧美美女被爆操 | 国产黄色毛片 | 日本夜夜操 | 天天摸天天射 | 久久免费成人 | 寡妇一级a毛片免费播放 | 天天狠天天透 | 狠狠躁夜夜躁人人躁婷婷视频 | 一级毛片ab片高清毛片 | 草草草在线 | 中国女人三级在线播放 | 福利视频欧美 | 亚洲欧美成人综合在线 | 成人777777| 视频一区二区欧美日韩在线 | 黄色一级大片 | 欧美日韩一区二区视频图片 | 人人做人人做人人爱 | 日本亚洲天堂网 | 夜夜操夜夜爱 | 麻豆第一页 | 欧美日韩成人在线视频 | 日韩在线观看一区二区三区 | 午夜寂寞影院视频在线观看 | 五月丁六月停停 | 欧美亚洲性色影视在线 | 手机在线看片国产 | 国产精品一区在线观看 | 欧美亚洲另类一区中文字幕 | 欧美线在线精品观看视频 | 激情六月丁香 | 欧美1|