在Spring Boot中配置数据库连接
今天我们要谈谈如何在Spring Boot项目中配置数据库连接。我们会创建两个Java类:DatabaseProperties.java
和DataSourceConfig.java
,并在我们的应用程序中注入这些配置。让我们一起乘风破浪,开始这段编码之旅吧!
目录
- 创建`DatabaseProperties.java`
- 创建`DataSourceConfig.java`
- 配置入口文件
- 配置`application.properties`
创建DatabaseProperties.java
首先,我们需要创建一个类来存储数据库连接的相关属性。这个类将使用Spring Boot的@ConfigurationProperties
注解来从application.properties
文件中读取配置。以下是DatabaseProperties.java
的示例:
package top.mryan2005.xxx; // 这个包名需要根据你的maven项目结构来调整
import org.springframework.boot.context.properties.ConfigurationProperties;
import lombok.Data;
@ConfigurationProperties(prefix = "spring.datasource")
@Data
public class DatabaseProperties {
public String url;
public String username;
public String password;
public String driverClassName;
}
在这个类中,我们定义了数据库连接所需的四个属性:url
、username
、password
和driverClassName
。这些属性将从application.properties
文件中读取。
创建DataSourceConfig.java
接下来,我们需要创建一个配置类DataSourceConfig.java
,它将使用DatabaseProperties
来配置数据源和JdbcTemplate
。
package top.mryan2005.xxx; // 这个包名需要根据你的maven项目结构来调整
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import javax.sql.DataSource;
@Configuration
public class DataSourceConfig {
@Autowired
DatabaseProperties databaseProperties;
@Bean
public DataSource dataSource() {
System.out.println(databaseProperties.url);
System.out.println(databaseProperties.username);
System.out.println(databaseProperties.password);
System.out.println(databaseProperties.driverClassName);
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(databaseProperties.driverClassName);
dataSource.setUrl(databaseProperties.url);
dataSource.setUsername(databaseProperties.username);
dataSource.setPassword(databaseProperties.password);
return dataSource;
}
@Bean
public JdbcTemplate jdbcTemplate(DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
}
在这个类中,我们定义了两个@Bean
方法:dataSource()
和jdbcTemplate()
。dataSource()
方法使用DatabaseProperties
来配置并返回一个DriverManagerDataSource
实例,而jdbcTemplate()
方法则返回一个基于该数据源的JdbcTemplate
实例。
配置入口文件
在Spring Boot的入口文件(即*Application.java
)中,我们需要添加@EnableConfigurationProperties(DatabaseProperties.class)
注解,以使DatabaseProperties
类生效。
import org.springframework.boot.context.properties.EnableConfigurationProperties;
// 其他import语句...
@SpringBootApplication
@EnableConfigurationProperties(DatabaseProperties.class)
public class YourApplication {
public static void main(String[] args) {
SpringApplication.run(YourApplication.class, args);
}
}
配置application.properties
最后,在application.properties
文件中,我们需要添加数据库连接的具体配置:
spring.datasource.url=jdbc:sqlserver://localhost:1433;databaseName=newSQLRepo;encrypt=false
spring.datasource.username=sa
spring.datasource.password=123456
spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.data-source-class-name=com.alibaba.druid.pool.DruidDataSource
这样,我们的Spring Boot项目就配置好了数据库连接。
旅行者们,现在你们可以尽情享受数据的海洋啦!比起七天神像,你眼里的光芒更值得被传唱呢。
继续前行吧,编程的旅程才刚刚开始!