Spring\SpringBoot配置連接數(shù)據(jù)庫(kù)的方法
Spring配置連接數(shù)據(jù)庫(kù)
設(shè)置jdbc.properties
jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/SSM jdbc.username=root jdbc.password=root
創(chuàng)建配置類
/**
* @Author: Promsing
* @Date: 2021/5/30 - 14:52
* @Description:連接數(shù)據(jù)庫(kù)的配置類
* @version: 1.0
*/
@Configuration//聲明該類是一個(gè)java配置類,相當(dāng)于一個(gè)xml配置文件
@PropertySource("classpath:jdbc.properties") //讀取資源文件
public class JdbcConfiguration {
@Value("${jdbc.driverClassName}")
private String driverClassName;
@Value("${jdbc.url}")
private String url;
@Value("${jdbc.username}")
private String username;
@Value("${jdbc.password}")
private String password;
@Bean //將返回值注入到IOC容器中
public DataSource dataSource(){
DruidDataSource dataSource=new DruidDataSource();
//設(shè)置連接數(shù)據(jù)庫(kù)的四大參數(shù)
dataSource.setDriverClassName(this.driverClassName);
dataSource.setUrl(this.url);
dataSource.setUsername(this.username);
dataSource.setPassword(this.password);
return dataSource;
}
}
SpringBoot配置連接數(shù)據(jù)庫(kù)
設(shè)置application.properties
jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/SSM jdbc.username=root jdbc.password=root
創(chuàng)建配置類-JdbcProperties
/**
* @Author: Promsing
* @Date: 2021/5/30 - 15:41
* @Description: 封裝了讀取出來(lái)的配置文件
* @version: 1.0
*/
@ConfigurationProperties(prefix = "jdbc")
public class JdbcProperties {
private String driverClassName;
private String url;
private String username;
private String password;
public void setDriverClassName(String driverClassName) {
this.driverClassName = driverClassName;
}
public void setUrl(String url) {
this.url = url;
}
public void setUsername(String username) {
this.username = username;
}
public void setPassword(String password) {
this.password = password;
}
public String getDriverClassName() {
return driverClassName;
}
public String getUrl() {
return url;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
}
創(chuàng)建配置類-JdbcConfiguration
/**
* @Author: Promsing
* @Date: 2021/5/30 - 14:52
* @Description: 連接數(shù)據(jù)庫(kù)的Java配置類
* @version: 1.0
*/
@Configuration//聲明該類是一個(gè)java配置類,相當(dāng)于一個(gè)西xml配置文件
@EnableConfigurationProperties(JdbcProperties.class) //加載JDBC的配置類
public class JdbcConfiguration {
@Autowired
private JdbcProperties jdbcProperties;
//方式一
@Bean //將返回值注入到IOC容器中
public DataSource dataSource(){
DruidDataSource dataSource=new DruidDataSource();
//設(shè)置連接數(shù)據(jù)庫(kù)的四大參數(shù)
dataSource.setDriverClassName(this.jdbcProperties.getDriverClassName());
dataSource.setUrl(this.jdbcProperties.getUrl());
dataSource.setUsername(this.jdbcProperties.getUsername());
dataSource.setPassword(this.jdbcProperties.getPassword());
return dataSource;
}
/*
//方式二:最優(yōu)雅最簡(jiǎn)單--直接換掉方式一
@Bean //將返回值注入到IOC容器中
@ConfigurationProperties(prefix = "jdbc")
public DataSource dataSource(){
DruidDataSource dataSource=new DruidDataSource();
return dataSource;
}
* */
/*
//方式三通過(guò)構(gòu)造函數(shù)注入--在方式一上的方式修改
public JdbcConfiguration(JdbcProperties jdbcProperties) {
this.jdbcProperties = jdbcProperties;
}
* */
/*
//方式四通過(guò)方法的參數(shù)注入--直接換掉方式一
public DataSource dataSource(dbcProperties jdbcProperties){
DruidDataSource dataSource=new DruidDataSource();
//設(shè)置連接數(shù)據(jù)庫(kù)的四大參數(shù)
dataSource.setDriverClassName(jdbcProperties.getDriverClassName());
dataSource.setUrl(jdbcProperties.getUrl());
dataSource.setUsername(jdbcProperties.getUsername());
dataSource.setPassword(jdbcProperties.getPassword());
return dataSource;
// }
* */
}
SpringBoot的四種屬性注入方式
1. Autowired注入
2.直接在@Bean方法中使用@ConfigurationProperties(prefix = "jdbc")
3.構(gòu)造函數(shù)主語(yǔ)
4.@Bean方法形參注入
需要注意的是配置文件中的名稱要與 JdbcProperties中的屬性名稱要一致。項(xiàng)目開發(fā)過(guò)程中第二種最優(yōu)雅最簡(jiǎn)潔,但是我們最常用的還是第一種,這一種更符合我們的開發(fā)習(xí)慣,書寫習(xí)慣。
Debug方式啟動(dòng),以上幾種方式都能給 DruidDataSource賦值。

到此這篇關(guān)于Spring\SpringBoot配置連接數(shù)據(jù)庫(kù)的方法 的文章就介紹到這了,更多相關(guān)SpringBoot配置連接數(shù)據(jù)庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JAVA多線程實(shí)現(xiàn)的四種方式及使用場(chǎng)景詳解
這篇文章主要介紹了JAVA多線程實(shí)現(xiàn)的四種方式及使用場(chǎng)景,并舉例說(shuō)明了在管理系統(tǒng)中多線程的應(yīng)用場(chǎng)景,如數(shù)據(jù)導(dǎo)入導(dǎo)出、數(shù)據(jù)緩存更新、并發(fā)用戶操作處理、系統(tǒng)監(jiān)控和定時(shí)任務(wù)執(zhí)行,需要的朋友可以參考下2025-01-01
Java根據(jù)身份證號(hào)計(jì)算年齡,15位身份證號(hào)碼轉(zhuǎn)18位原理與操作示例
這篇文章主要介紹了Java根據(jù)身份證號(hào)計(jì)算年齡,15位身份證號(hào)碼轉(zhuǎn)18位原理與操作,結(jié)合實(shí)例形式詳細(xì)分析了構(gòu)成身份證號(hào)碼的各個(gè)位的含義,15位身份證號(hào)碼轉(zhuǎn)18位的方法及Java根據(jù)身份證號(hào)計(jì)算年齡相關(guān)操作技巧,需要的朋友可以參考下2019-10-10
SpringBoot時(shí)間格式化的方法小結(jié)
SpringBoot中的時(shí)間格式化通常指的是將Java中的日期時(shí)間類型轉(zhuǎn)換為指定格式的字符串,或者將字符串類型的時(shí)間解析為Java中的日期時(shí)間類型,本文小編將給大家詳細(xì)總結(jié)了SpringBoot時(shí)間格式化的方法,剛興趣的小伙伴跟著小編一起來(lái)看看吧2023-10-10
解決IDEA Maven下載依賴時(shí)報(bào)錯(cuò)ERROR - #org.jetbrains.ide
這篇文章主要介紹了解決IDEA Maven下載依賴時(shí)報(bào)錯(cuò)ERROR - #org.jetbrains.idea.maven - Cannot reconnect.問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08

