SpringBoot怎么集成Druid連接MySQL8.0.11-創(chuàng)新互聯(lián)

這篇“SpringBoot怎么集成Druid連接MySQL8.0.11”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“SpringBoot怎么集成Druid連接MySQL8.0.11”文章吧。

成都創(chuàng)新互聯(lián)主營(yíng)靈丘網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都App定制開發(fā),靈丘h5成都微信小程序搭建,靈丘網(wǎng)站營(yíng)銷推廣歡迎靈丘等地區(qū)企業(yè)咨詢

1.配置依賴

依賴管理我們可以使用maven或者gradle
MySQL Connector/J版本選擇:


SpringBoot怎么集成Druid連接MySQL8.0.11

注意:如果是MySQL5.X系列的話,使用8.0.X的驅(qū)動(dòng)會(huì)有兼容性問(wèn)題出現(xiàn),請(qǐng)留意!

1.1MySQL Connector/J依賴配置 maven

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.11</version>
</dependency>

gradle

// https://mvnrepository.com/artifact/mysql/mysql-connector-java
compile group: "mysql", name: "mysql-connector-java", version: "8.0.11"

1.2Druid依賴配置

 maven

<!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid</artifactId>
    <version>1.1.10</version>
</dependency>

####gradle

// https://mvnrepository.com/artifact/com.alibaba/druid
compile group: "com.alibaba", name: "druid", version: "1.1.10"

2.配置DataSource

這里我們使用Java Config。我在使用YAML配置的時(shí)候,發(fā)現(xiàn)代碼提示不完整,這大大增加了出錯(cuò)的可能性,所以推薦使用Java Config。

 2.1創(chuàng)建配置類

@Configuration
public class Config {
    @Bean
    public DruidDataSource druidDataSource() {
        //Druid 數(shù)據(jù)源配置
        DruidDataSource dataSource = new DruidDataSource();
        dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql://127.0.0.1:3306/work?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true");
        dataSource.setUsername("webuser");
        dataSource.setPassword("123456");
        //初始連接數(shù)(默認(rèn)值0)
        dataSource.setInitialSize(8);
        //最小連接數(shù)(默認(rèn)值0)
        dataSource.setMinIdle(8);
        //較大連接數(shù)(默認(rèn)值8,注意"maxIdle"這個(gè)屬性已經(jīng)棄用)
        dataSource.setMaxActive(32);
        return dataSource;
    }
}

2.2注意事項(xiàng)

部分注釋寫在代碼里面了,這里說(shuō)兩個(gè)注意事項(xiàng)
一個(gè)是DriverClassName
8.0.11驅(qū)動(dòng)(應(yīng)該是8版本開始),棄用了原來(lái)的方法,我們直接去看源碼也能找到。
com.mysql.jdbc.Driver里面有兩句話

Loading class `com.mysql.jdbc.Driver". This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver"
The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.


意思是加載類“com.mysql.jdbc.Driver”。 這已被棄用。 新的驅(qū)動(dòng)程序類是`com.mysql.cj.jdbc.Driver" 所以注意一個(gè)屬性的設(shè)置“setDriverClassName” 另一個(gè)注意事項(xiàng)是URL的設(shè)置,有4個(gè)參數(shù)需要注意一下

  • characterEncoding=utf8 (字符編碼)

  • useSSL=false (發(fā)現(xiàn)是8版本開始才需要添加,5.X印象中不需要,添加這個(gè)參數(shù)可能和MySQL的SSL連接設(shè)置有關(guān)系)

  • serverTimezone=UTC (當(dāng)連接數(shù)據(jù)庫(kù)時(shí)候,出現(xiàn)Time Zone錯(cuò)誤時(shí)添加此參數(shù),我貌似是使用Druid連接池時(shí)才出現(xiàn)的這個(gè)問(wèn)題)

  • allowPublicKeyRetrieval=true (使用root賬戶登陸沒(méi)問(wèn)題,使用普通賬戶會(huì)提示Public Key Retrieval錯(cuò)誤)


更多配置,請(qǐng)參考Druid項(xiàng)目中的wiki,根據(jù)需求進(jìn)行配置

SpringBoot怎么集成Druid連接MySQL8.0.11

以上就是關(guān)于“SpringBoot怎么集成Druid連接MySQL8.0.11”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享名稱:SpringBoot怎么集成Druid連接MySQL8.0.11-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://muchs.cn/article26/cddocg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、App設(shè)計(jì)、定制網(wǎng)站、網(wǎng)站營(yíng)銷微信小程序、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)