設置jdbc.properties
jdbc.driverClassName=com.MySQL.jdbc.Driverjdbc.url=jdbc:mysql://127.0.0.1:3306/SSMjdbc.username=rootjdbc.password=root
創建配置類
@Configuration//聲明該類是一個java配置類,相當于一個xml配置文件@PropertySource("classpath:jdbc.properties")//讀取資源文件publicclassJdbcConfiguration{@Value("${jdbc.driverClassName}")privateStringdriverClassName;@Value("${jdbc.url}")privateStringurl;@Value("${jdbc.username}")privateStringusername;@Value("${jdbc.password}")privateStringpassword;@Bean//將返回值注入到IOC容器中publicDataSourcedataSource(){DruidDataSourcedataSource=newDruidDataSource();//設置連接數據庫的四大參數dataSource.setDriverClassName(this.driverClassName);dataSource.setUrl(this.url);dataSource.setUsername(this.username);dataSource.setPassword(this.password);returndataSource;}}
設置application.properties
jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://127.0.0.1:3306/SSMjdbc.username=rootjdbc.password=root
創建配置類-JdbcProperties
/***@Author:Promsing*@Date:2021/5/30-15:41*@Description:封裝了讀取出來的配置文件*@version:1.0*/@ConfigurationProperties(prefix="jdbc")publicclassJdbcProperties{privateStringdriverClassName;privateStringurl;privateStringusername;privateStringpassword;publicvoidsetDriverClassName(StringdriverClassName){this.driverClassName=driverClassName;}publicvoidsetUrl(Stringurl){this.url=url;}publicvoidsetUsername(Stringusername){this.username=username;}publicvoidsetPassword(Stringpassword){this.password=password;}publicStringgetDriverClassName(){returndriverClassName;}publicStringgetUrl(){returnurl;}publicStringgetUsername(){returnusername;}publicStringgetPassword(){returnpassword;}}
創建配置類-JdbcConfiguration
/***@Author:Promsing*@Date:2021/5/30-14:52*@Description:連接數據庫的Java配置類*@version:1.0*/@Configuration//聲明該類是一個java配置類,相當于一個西xml配置文件@EnableConfigurationProperties(JdbcProperties.class)//加載JDBC的配置類publicclassJdbcConfiguration{@AutowiredprivateJdbcPropertiesjdbcProperties;//方式一@Bean//將返回值注入到IOC容器中publicDataSourcedataSource(){DruidDataSourcedataSource=newDruidDataSource();//設置連接數據庫的四大參數dataSource.setDriverClassName(this.jdbcProperties.getDriverClassName());dataSource.setUrl(this.jdbcProperties.getUrl());dataSource.setUsername(this.jdbcProperties.getUsername());dataSource.setPassword(this.jdbcProperties.getPassword());returndataSource;}/*//方式二:最優雅最簡單--直接換掉方式一@Bean//將返回值注入到IOC容器中@ConfigurationProperties(prefix="jdbc")publicDataSourcedataSource(){DruidDataSourcedataSource=newDruidDataSource();returndataSource;}**//*//方式三通過構造函數注入--在方式一上的方式修改publicJdbcConfiguration(JdbcPropertiesjdbcProperties){this.jdbcProperties=jdbcProperties;}**//*//方式四通過方法的參數注入--直接換掉方式一publicDataSourcedataSource(dbcPropertiesjdbcProperties){DruidDataSourcedataSource=newDruidDataSource();//設置連接數據庫的四大參數dataSource.setDriverClassName(jdbcProperties.getDriverClassName());dataSource.setUrl(jdbcProperties.getUrl());dataSource.setUsername(jdbcProperties.getUsername());dataSource.setPassword(jdbcProperties.getPassword());returndataSource;//}**/}
1. Autowired注入
2.直接在@Bean方法中使用@ConfigurationProperties(prefix = "jdbc")
3.構造函數主語
4.@Bean方法形參注入
需要注意的是配置文件中的名稱要與JdbcProperties中的屬性名稱要一致。項目開發過程中第二種最優雅最簡潔,但是我們最常用的還是第一種,這一種更符合我們的開發習慣,書寫習慣。
Debug方式啟動,以上幾種方式都能給DruidDataSource賦值。
關于怎么在Spring\SpringBoot中配置連接數據庫問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注本站行業資訊頻道了解更多相關知識。
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
隨著人們消費觀念的改變,各種的消費貸款或者信用卡充斥到每個人的生活中,宣傳的賣點也是各具特色的,有的說看電影優惠,有的說購物打折,有的是酒店打折,適合不同的人群的,比如說酒店打折適合經常出去旅游或者出差的人,黑卡這個詞語,估計很多人都聽說過是身份的象征,是財富的代名詞,那么環球黑卡是騙子嗎?最近還是很火的,為此小編給大家介紹一下。環球黑卡欺詐是真的么?1、環球黑卡(BLACK MAGIC)是杭州冒...
愛分享抖音點贊賺錢是真的嗎?目前來看,愛分享抖音點贊賺錢是不靠譜的,也就不完全真。在具體的操作中我們能發現這個操作和之前的網絡打字員、刷單員基本一致,即相關任務方其實就是靠著推廣出去來拉人頭賺錢,又或者是設定一百個人每天搶一個任務的方式來迷惑參與者。當然,在這個環節,真正賺錢的還是上層,我們普通人很難在中間獲利。抖音好幾百萬點贊怎么做到的?方法/步驟首先得有大量的粉絲,當別人關注你之后,你的視頻會...
開放式基金是一種與封閉式基金相對應的定義,是按照基金申購贖回等運作方式的不同來劃分的,還有那些關于基金的知識呢?以下是由學習啦小編整理關于基金入門基礎知識的內容,希望大家喜歡!基金入門知識——基金與其他投資方式的區別1、 基金與銀行儲蓄有什么不同?(資料圖)銀行儲蓄的目標一般是滿足短期需要,例如即時的消費或意外支出。它的特點是很安全,很容易變現,您可以隨時取回資金,而且有一定的利息收入;但是銀行存...