国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

c3p0 數(shù)據(jù)池入門(mén)使用教程

這篇具有很好參考價(jià)值的文章主要介紹了c3p0 數(shù)據(jù)池入門(mén)使用教程。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

dbcp 系列

從零開(kāi)始手寫(xiě) mybatis (三)jdbc pool 如何從零手寫(xiě)實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接池 dbcp?

萬(wàn)字長(zhǎng)文深入淺出數(shù)據(jù)庫(kù)連接池 HikariCP/Commons DBCP/Tomcat/c3p0/druid 對(duì)比

Database Connection Pool 數(shù)據(jù)庫(kù)連接池概覽

c3p0 數(shù)據(jù)池入門(mén)使用教程

alibaba druid 入門(mén)介紹

數(shù)據(jù)庫(kù)連接池 HikariCP 性能為什么這么快?

Apache Tomcat DBCP(Database Connection Pool) 數(shù)據(jù)庫(kù)連接池-01-入門(mén)介紹

vibur-dbcp 并發(fā)、快速且功能完備的 JDBC 連接池,提供先進(jìn)的性能監(jiān)控功能-01-入門(mén)介紹

c3p0 是什么?

c3p0是一個(gè)易于使用的庫(kù),通過(guò)使用jdbc3規(guī)范和jdbc2的可選擴(kuò)展定義的功能來(lái)擴(kuò)展傳統(tǒng)JDBC驅(qū)動(dòng)程序,從而使其“企業(yè)就緒”。

從0.9.5版開(kāi)始,c3p0完全支持jdbc4規(guī)范。

特別是c3p0提供了一些有用的服務(wù):

一個(gè)類(lèi),它使傳統(tǒng)的基于DriverManager的JDBC驅(qū)動(dòng)程序適應(yīng)最新的javax.sql.DataSource方案,以獲取數(shù)據(jù)庫(kù)連接。

DataSources后面的Connection和PreparedStatement的透明池可以“包裝”傳統(tǒng)驅(qū)動(dòng)程序或任意非池化DataSources。

該庫(kù)盡力使細(xì)節(jié)正確:

c3p0數(shù)據(jù)源既可引用也可序列化,因此適合綁定到各種基于JNDI的命名服務(wù)。

檢入池中的Connections和Statements時(shí),會(huì)仔細(xì)清理Statement和ResultSet,以防止客戶端使用僅清理其Connections的惰性但常見(jiàn)的資源管理策略時(shí)資源耗盡。

該庫(kù)采用JDBC 2和3規(guī)范定義的方法(即使這些與庫(kù)作者的首選項(xiàng)沖突)。

數(shù)據(jù)源以JavaBean樣式編寫(xiě),提供了所有必需和大多數(shù)可選屬性(以及一些非標(biāo)準(zhǔn)屬性)以及無(wú)參數(shù)構(gòu)造函數(shù)。

實(shí)現(xiàn)了所有JDBC定義的內(nèi)部接口(ConnectionPoolDataSource,PooledConnection,生成ConnectionEvent的Connection等)。

您可以將c3p0類(lèi)與兼容的第三方實(shí)現(xiàn)混合使用(盡管并非所有c3p0功能都可以與ConnectionPoolDataSource的外部實(shí)現(xiàn)一起使用)。

c3p0希望提供的數(shù)據(jù)源實(shí)現(xiàn)不適合大批量“ J2EE企業(yè)應(yīng)用程序”使用。請(qǐng)?zhí)峁┓答仯e(cuò)誤修復(fù)等!

入門(mén)例子

maven 導(dǎo)入

<dependency>
    <groupId>com.mchange</groupId>
    <artifactId>c3p0</artifactId>
    <version>0.9.5.5</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.29</version>
</dependency>

入門(mén)代碼

通過(guò)代碼顯式指定配置:

ComboPooledDataSource source = new ComboPooledDataSource();
source.setDriverClass("com.mysql.jdbc.Driver");
source.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8");
source.setUser("root");
source.setPassword("123456");

//獲取鏈接
Connection connection = source.getConnection();
System.out.println(connection.getCatalog());
  • 日志輸出
七月 17, 2020 4:58:21 下午 com.mchange.v2.log.MLog 
信息: MLog clients using java 1.4+ standard logging.
七月 17, 2020 4:58:22 下午 com.mchange.v2.c3p0.C3P0Registry 
信息: Initializing c3p0-0.9.5.5 [built 11-December-2019 22:18:33 -0800; debug? true; trace: 10]
七月 17, 2020 4:58:22 下午 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource 
信息: Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, contextClassLoaderSource -> caller, dataSourceName -> 1bqqx35abpix6b312lrdzj|7bfcd12c, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.jdbc.Driver, extensions -> {}, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, forceSynchronousCheckins -> false, forceUseNamedDriverClass -> false, identityToken -> 1bqqx35abpix6b312lrdzj|7bfcd12c, idleConnectionTestPeriod -> 0, initialPoolSize -> 2, jdbcUrl -> jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 30, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 10, maxStatements -> 50, maxStatementsPerConnection -> 0, minPoolSize -> 2, numHelperThreads -> 3, preferredTestQuery -> null, privilegeSpawnedThreads -> false, properties -> {user=******, password=******}, propertyCycle -> 0, statementCacheNumDeferredCloseThreads -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, userOverrides -> {}, usesTraditionalReflectiveProxies -> false ]
test

通過(guò)配置文件

配置

  • c3p0-config.xml

將該配置文件,置于 resources 文件夾下。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-840155.html

<c3p0-config>
    <!-- 默認(rèn)配置,如果沒(méi)有指定則使用這個(gè)配置 -->
    <default-config>
        <property name="driverClass">com.mysql.jdbc.Driver</property>
        <property name="jdbcUrl">
            <![CDATA[jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8]]>
        </property>
        <property name="user">root</property>
        <property name="password">123456</property>
        <!-- 初始化池大小 -->
        <property name="initialPoolSize">2</property>
        <!-- 最大空閑時(shí)間 -->
        <property name="maxIdleTime">30</property>
        <!-- 最多有多少個(gè)連接 -->
        <property name="maxPoolSize">10</property>
        <!-- 最少幾個(gè)連接 -->
        <property name="minPoolSize">2</property>
        <!-- 每次最多可以執(zhí)行多少個(gè)批處理語(yǔ)句 -->
        <property name="maxStatements">50</property>
    </default-config>
</c3p0-config>

實(shí)現(xiàn)

ComboPooledDataSource source = new ComboPooledDataSource();

Connection connection = source.getConnection();
System.out.println(connection.getCatalog());

日志

七月 17, 2020 5:00:41 下午 com.mchange.v2.log.MLog 
信息: MLog clients using java 1.4+ standard logging.
七月 17, 2020 5:00:41 下午 com.mchange.v2.c3p0.C3P0Registry 
信息: Initializing c3p0-0.9.5.5 [built 11-December-2019 22:18:33 -0800; debug? true; trace: 10]
七月 17, 2020 5:00:42 下午 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource 
信息: Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, contextClassLoaderSource -> caller, dataSourceName -> 1bqqx35abpj05mbhotd60|27082746, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.jdbc.Driver, extensions -> {}, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, forceSynchronousCheckins -> false, forceUseNamedDriverClass -> false, identityToken -> 1bqqx35abpj05mbhotd60|27082746, idleConnectionTestPeriod -> 0, initialPoolSize -> 2, jdbcUrl -> jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 30, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 10, maxStatements -> 50, maxStatementsPerConnection -> 0, minPoolSize -> 2, numHelperThreads -> 3, preferredTestQuery -> null, privilegeSpawnedThreads -> false, properties -> {user=******, password=******}, propertyCycle -> 0, statementCacheNumDeferredCloseThreads -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, userOverrides -> {}, usesTraditionalReflectiveProxies -> false ]
test

到了這里,關(guān)于c3p0 數(shù)據(jù)池入門(mén)使用教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • JDBC中C3P0、Druid、HikariCP 、DBCP連接池的jar包下載與IDEA配置

    JDBC中C3P0、Druid、HikariCP 、DBCP連接池的jar包下載與IDEA配置

    連接池是應(yīng)用程序與數(shù)據(jù)庫(kù)之間的一個(gè)緩沖區(qū),它存儲(chǔ)了一定數(shù)量的空閑數(shù)據(jù)庫(kù)連接,當(dāng)應(yīng)用程序需要連接數(shù)據(jù)庫(kù)時(shí),可以從連接池中獲取一個(gè)可用連接,使用完畢后再將連接歸還給連接池,從而避免了每次連接都需要?jiǎng)?chuàng)建和銷(xiāo)毀連接的開(kāi)銷(xiāo),提高了應(yīng)用程序的性能和可伸縮

    2024年04月23日
    瀏覽(40)
  • Javaweb安全——反序列化漏洞-C3P0鏈

    Javaweb安全——反序列化漏洞-C3P0鏈

    C3P0是一個(gè)開(kāi)源的JDBC連接池,它實(shí)現(xiàn)了數(shù)據(jù)源與JNDI綁定,支持JDBC3規(guī)范和實(shí)現(xiàn)了JDBC2的標(biāo)準(zhǔn)擴(kuò)展說(shuō)明的Connection和Statement池的DataSources對(duì)象。 即將用于連接數(shù)據(jù)庫(kù)的連接整合在一起形成一個(gè)隨取隨用的數(shù)據(jù)庫(kù)連接池(Connection pool)。 ysoserial代碼注釋中的調(diào)用鏈如下: 自下向上的

    2024年02月09日
    瀏覽(15)
  • [前端系列第3彈]JS入門(mén)教程:從零開(kāi)始學(xué)習(xí)JavaScript

    本文將帶領(lǐng)大家,從零開(kāi)始學(xué)習(xí)JavaScript,fighting~ 目錄 一、JavaScript簡(jiǎn)介 二、變量和數(shù)據(jù)類(lèi)型 三、注釋和分號(hào) 四、算術(shù)運(yùn)算符 五、表達(dá)式和語(yǔ)句 六、代碼塊和作用域 七、函數(shù)(最重要)? ????????JavaScript(簡(jiǎn)稱(chēng)JS)是一種運(yùn)行在瀏覽器中的腳本語(yǔ)言,它可以讓網(wǎng)頁(yè)變得

    2024年02月13日
    瀏覽(95)
  • [前端系列第2彈]CSS入門(mén)教程:從零開(kāi)始學(xué)習(xí)Web頁(yè)面的樣式和布局

    在這篇文章中,我將介紹CSS的基本概念、語(yǔ)法、選擇器、屬性和值,以及如何使用它們來(lái)定義Web頁(yè)面的外觀和布局。還將給一些簡(jiǎn)單而實(shí)用的例子,可以跟著我一步一步地編寫(xiě)自己的CSS樣式表。 目錄 一、什么是CSS 二、CSS的語(yǔ)法 三、CSS的選擇器 四、CSS的屬性和值 (一)顏色

    2024年02月13日
    瀏覽(90)
  • [Java優(yōu)選系列第2彈]SpringMVC入門(mén)教程:從零開(kāi)始搭建一個(gè)Web應(yīng)用程序

    [Java優(yōu)選系列第2彈]SpringMVC入門(mén)教程:從零開(kāi)始搭建一個(gè)Web應(yīng)用程序

    想和你們分享我眼里的代碼世界???? 優(yōu)選系列持續(xù)更新中?? 一直在等你,你終于來(lái)啦?? ?????????????????????????? 綠色代表解釋說(shuō)明? ??????????? ?? 黃色代表重點(diǎn) ??????????? ? ?? 紅色代表精髓 ????????SpringMVC是一個(gè)基于Java的Web框架,它使

    2024年02月12日
    瀏覽(30)
  • 2·ESP32-C3入門(mén)教程——按鍵基本法

    2·ESP32-C3入門(mén)教程——按鍵基本法

    【寫(xiě)在前面】經(jīng)過(guò)了點(diǎn)燈→定時(shí)器點(diǎn)燈→PWM點(diǎn)燈的學(xué)習(xí)之后,逐漸開(kāi)始對(duì)ESP32 C3整體的框架有了一定認(rèn)識(shí)【?點(diǎn)燈模塊鏈接指路:http://t.csdn.cn/xOBmI】也掌握了一些理解和學(xué)習(xí)代碼的思路,這一章咱們聊一聊按鍵的控制。 目錄 GPIO輸出與按鍵控制 level 1:從一個(gè)樸實(shí)無(wú)華的點(diǎn)按開(kāi)

    2023年04月20日
    瀏覽(24)
  • 1·ESP32-C3入門(mén)教程——不止點(diǎn)亮一顆燈

    1·ESP32-C3入門(mén)教程——不止點(diǎn)亮一顆燈

    【寫(xiě)在前面】最近在讀《ESP32-C物聯(lián)網(wǎng)開(kāi)發(fā)實(shí)戰(zhàn)》,個(gè)人感覺(jué)書(shū)在這一塊講的并不太適合初學(xué)者。這里反過(guò)來(lái),先通過(guò)實(shí)踐的方式實(shí)現(xiàn)功能,搞懂每一行代碼的實(shí)現(xiàn)機(jī)制之后,再去一個(gè)個(gè)研究硬件的原理和機(jī)制。 ? ?如果還沒(méi)搭建好環(huán)境,或者碰到找不到頭文件的問(wèn)題,以下指

    2023年04月16日
    瀏覽(25)
  • DHTMLX Gantt入門(mén)使用教程【引入】:如何開(kāi)始使用 dhtmlxGantt

    DHTMLX Gantt入門(mén)使用教程【引入】:如何開(kāi)始使用 dhtmlxGantt

    DHTMLX Gantt是用于跨瀏覽器和跨平臺(tái)應(yīng)用程序的功能齊全的Gantt圖表。可滿足項(xiàng)目管理應(yīng)用程序的大部分開(kāi)發(fā)需求,具備完善的甘特圖圖表庫(kù),功能強(qiáng)大,價(jià)格便宜,提供豐富而靈活的JavaScript API接口,與各種服務(wù)器端技術(shù)(PHP,ASP.NET,Java等)簡(jiǎn)單集成,滿足多種定制開(kāi)發(fā)需求

    2023年04月14日
    瀏覽(111)
  • PaddleX入門(mén)教程3:開(kāi)始使用我們自己的模型進(jìn)行推理

    PaddleX入門(mén)教程3:開(kāi)始使用我們自己的模型進(jìn)行推理

    首先我們要從網(wǎng)上下載幾張圖片,一張菠菜的、一張胡蘿卜的、一張茄子的、一張西紅柿的,建議找一些相對(duì)辨識(shí)度比較高的。因?yàn)槲覀儸F(xiàn)在的模型,可能沒(méi)有那么強(qiáng)大。 如下:保存為jpg格式, 注意文件名的命名 。 然后,將 這些圖片放置到前面我們的模型目錄下。 ?此時(shí)

    2024年02月07日
    瀏覽(97)
  • 4·ESP32-C3入門(mén)教程——從本地控制走向云端控制(TCP/IP UDP篇)

    4·ESP32-C3入門(mén)教程——從本地控制走向云端控制(TCP/IP UDP篇)

    ? ? ? ? 距離實(shí)現(xiàn)一個(gè)完整的物聯(lián)網(wǎng)小應(yīng)用只差最后一步了,今天聊聊怎么樣在手機(jī)上對(duì)ESP32芯片發(fā)送指令和接收數(shù)據(jù),并借助ESP官方的接口——rainmaker,來(lái)實(shí)現(xiàn)遠(yuǎn)程控制和通信。我們也借由此進(jìn)入智能家居時(shí)代1.0(部分物聯(lián)網(wǎng)概念可以看看【序】在23年談物聯(lián)網(wǎng)) ? ? ? ?

    2024年02月16日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包