激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

2021-11-12 13:31D_gloria? Java教程

C3P0是一個開源的JDBC連接池,它實現了數據源和JNDI綁定,本文就使用Spring實現,具有一定的參考價值,感興趣的小伙伴們可以參考一下

前言

        C3P0是一個開源的JDBC連接池,它實現了數據源和JNDI綁定,支持JDBC3規范和JDBC2的標準擴展,目前使用它的開源項目有Hibernate,Spring等。

 1、環境準備:maven配置

         打開idea,點擊“+”新建項目,選擇Spring,點擊next,填寫項目的名稱,點擊finish,新的Spring項目就建好了

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

        新建好的spring項目目錄如下,這里可以看到是沒有pom.xml文件的,為了更好管理spring項目,需要配置maven環境。點擊項目上方的file/settings

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

        點擊Build,Execution,Deployment/Build Tools/Maven,將User settings file和Local repository這兩處的地址改成下載的maven安裝包的地址以及安裝包下settings.xml配置文件的地址,點擊OK

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

        右擊項目名稱,點擊Add Framework Support,勾選Maven,點擊OK

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

        添加了maven之后可以看到項目出現了熟悉的maven項目的文件夾和pom.xml文件

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

2、導入jar包:c3p0-0.9.5.4.jar和mysql-connector-java.jar

         右擊項目名稱,點擊Open Modules Settings

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

         點擊Modules/Dependencies,點擊右側“+”號,jars or directories

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

         選擇jar包存儲的路徑,選中需要導入的jar包,點擊OK

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

         可以看到目錄下出現了剛剛導入的jar包,勾選它們點擊OK

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

        打開pom.xml文件,在maven里添加mysql和c3p0這兩個依賴

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

 3、編寫測試類測試連接

        c3p0創建數據源的方法有兩種:一是直接使用set將屬性設置到數據源中,若后續需要更改只能通過源碼更改,二是將屬性寫入properties文件,通過加載properties配置文件的形式創建數據源,可讀寫能力更強

        首先介紹第一種方法,本測試類寫在Test文件夾下,主要需要注意的點有:

①driveClass現在都更新為com.mysql.cj.jdbc.Driver,而并非以前用的com.mysql.jdbc.Driver

②jdbcUrl中一定要在末尾加serverTimezone=UTC這一語句,不然就會報Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone時間區錯誤

@Test
//測試手動創建c3p0數據源
public void test1() throws PropertyVetoException, SQLException {
    ComboPooledDataSource dataSource = new ComboPooledDataSource();
    dataSource.setDriverClass("com.mysql.cj.jdbc.Driver");
    dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/spring-test?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC");
    dataSource.setUser("root");
    dataSource.setPassword("");
    Connection connection = dataSource.getConnection();
    System.out.println(connection);
    connection.close();
}

        運行后的結果如下,可以看到成功輸出了connection對象的地址,說明連接創建成功

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

         第二種方法,先在test文件夾的resources下新建properties配置文件,然后在properties里設置以下屬性值

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/spring-test?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
jdbc.username=root
jdbc.password=

         本測試方法和第一種測試方法寫在同一個測試類里

@Test
//測試手動創建c3p0數據源(加載properties配置文件形式)
public void test2() throws PropertyVetoException, SQLException {
    //讀取配置文件
    ResourceBundle rb = ResourceBundle.getBundle("jdbc");
    String driver = rb.getString("jdbc.driver");
    String url = rb.getString("jdbc.url");
    String username = rb.getString("jdbc.username");
    String password = rb.getString("jdbc.password");
 
    //創建數據源對象,設置連接參數
    ComboPooledDataSource dataSource = new ComboPooledDataSource();
    dataSource.setDriverClass(driver);
    dataSource.setJdbcUrl(url);
    dataSource.setUser(username);
    dataSource.setPassword(password);
 
    Connection connection = dataSource.getConnection();
    System.out.println(connection);
    connection.close();
}

         運行之后可以看到同樣成功輸出connection對象的地址,說明連接創建成功

詳解IDEA2020新建spring項目和c3p0連接池的創建和使用

到此這篇關于詳解IDEA2020新建spring項目和c3p0連接池的創建和使用的文章就介紹到這了,更多相關spring創建c3p0連接池內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/D_gloria/article/details/119520996
 

延伸 · 閱讀

精彩推薦
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發現了對于集合操作轉換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7482021-02-04
  • Java教程Java BufferWriter寫文件寫不進去或缺失數據的解決

    Java BufferWriter寫文件寫不進去或缺失數據的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數據的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程Java實現搶紅包功能

    Java實現搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經有好久沒有升過級了。升級完畢重啟之后,突然發現好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程xml與Java對象的轉換詳解

    xml與Java對象的轉換詳解

    這篇文章主要介紹了xml與Java對象的轉換詳解的相關資料,需要的朋友可以參考下...

    Java教程網2942020-09-17
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩中求8032021-07-12
主站蜘蛛池模板: 青青草免费观看 | 久色porn | 免费看真人a一级毛片 | 亚洲国产精品久久久久久久久 | 鲁丝一区二区二区四区 | 成人福利视频在线观看 | 中文在线免费观看 | 久久国产精品二国产精品中国洋人 | 国产伦精品一区二区三区在线 | chinesehdxxxx无套 久久另类视频 | av在线在线 | 91高清视频在线免费观看 | 999久久久精品 | 国产精品亚洲综合 | 中文字幕极速在线观看 | 欧美一级片在线 | 日本中文字幕久久 | 最新中文字幕日本 | 欧美a∨一区二区三区久久黄 | 久久久久久久爱 | 精品91av | 91精品最新国内在线播放 | 中国老女人一级毛片视频 | 在线看小早川怜子av | 手机av免费电影 | 午夜视频啊啊啊 | 激情影院在线观看 | 国产a级片电影 | 国内毛片视频 | 羞羞草视频 | 中文字幕亚洲情99在线 | 久久精品视频一区二区三区 | 国产精品高潮99久久久久久久 | 欧美一级成人 | 久草在线最新 | 欧美黄一区 | 91精品国产一区二区三区动漫 | 操皮视频 | h久久| 久久99综合久久爱伊人 | 精品欧美一区二区精品久久小说 |