Spring\SpringBoot配置連接數據庫的方法
Spring配置連接數據庫
設置jdbc.properties
jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/SSM jdbc.username=root jdbc.password=root
創建配置類
/** * @Author: Promsing * @Date: 2021/5/30 - 14:52 * @Description:連接數據庫的配置類 * @version: 1.0 */ @Configuration//聲明該類是一個java配置類,相當於一個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(); //設置連接數據庫的四大參數 dataSource.setDriverClassName(this.driverClassName); dataSource.setUrl(this.url); dataSource.setUsername(this.username); dataSource.setPassword(this.password); return dataSource; } }
SpringBoot配置連接數據庫
設置application.properties
jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/SSM jdbc.username=root jdbc.password=root
創建配置類-JdbcProperties
/** * @Author: Promsing * @Date: 2021/5/30 - 15:41 * @Description: 封裝瞭讀取出來的配置文件 * @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; } }
創建配置類-JdbcConfiguration
/** * @Author: Promsing * @Date: 2021/5/30 - 14:52 * @Description: 連接數據庫的Java配置類 * @version: 1.0 */ @Configuration//聲明該類是一個java配置類,相當於一個西xml配置文件 @EnableConfigurationProperties(JdbcProperties.class) //加載JDBC的配置類 public class JdbcConfiguration { @Autowired private JdbcProperties jdbcProperties; //方式一 @Bean //將返回值註入到IOC容器中 public DataSource dataSource(){ DruidDataSource dataSource=new DruidDataSource(); //設置連接數據庫的四大參數 dataSource.setDriverClassName(this.jdbcProperties.getDriverClassName()); dataSource.setUrl(this.jdbcProperties.getUrl()); dataSource.setUsername(this.jdbcProperties.getUsername()); dataSource.setPassword(this.jdbcProperties.getPassword()); return dataSource; } /* //方式二:最優雅最簡單--直接換掉方式一 @Bean //將返回值註入到IOC容器中 @ConfigurationProperties(prefix = "jdbc") public DataSource dataSource(){ DruidDataSource dataSource=new DruidDataSource(); return dataSource; } * */ /* //方式三通過構造函數註入--在方式一上的方式修改 public JdbcConfiguration(JdbcProperties jdbcProperties) { this.jdbcProperties = jdbcProperties; } * */ /* //方式四通過方法的參數註入--直接換掉方式一 public DataSource dataSource(dbcProperties jdbcProperties){ DruidDataSource dataSource=new DruidDataSource(); //設置連接數據庫的四大參數 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.構造函數主語
4.@Bean方法形參註入
需要註意的是配置文件中的名稱要與 JdbcProperties中的屬性名稱要一致。項目開發過程中第二種最優雅最簡潔,但是我們最常用的還是第一種,這一種更符合我們的開發習慣,書寫習慣。
Debug方式啟動,以上幾種方式都能給 DruidDataSource賦值。
到此這篇關於Spring\SpringBoot配置連接數據庫的方法 的文章就介紹到這瞭,更多相關SpringBoot配置連接數據庫內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Spring配置數據源的三種方式(小結)
- 迅速學會@ConfigurationProperties的使用操作
- 純註解版spring與mybatis的整合過程
- 帶你快速入門掌握Spring的那些註解使用
- SpringBoot集成Druid連接池連接MySQL8.0.11