【项目实战】SpringBoot配置文件

一、Spring Boot的配置文件

Spring Boot项目使用一个全局的配置文件
Spring Boot的配置文件名是固定的application.properties或application.yml 。
SpringBoot提供了多种配置文件的方式,如.properties、.yaml、.json等格式的配置文件。
在SpringBoot项目中,可以通过配置文件来配置项目的一些属性值,如数据库连接、邮件服务器等。

Spring Boot项目的配置文件默认存放在resources目录中。
实际上,Spring Boot系统启动时会读取4个不同路径下的配置文件,这4个位置中的application.properties文件的优先级按照上面列出的顺序依次降低。

二、两种Spring Boot的配置文件名

2.1 application.properties

这是一个纯文本文件,用于配置Spring Boot的属性。
这个文件的作用是修改Spring Boot自动配置的默认值 。

2.2 application.yml

这是一个YAML文件,也是用于配置Spring Boot的属性。

三、简单的SpringBoot配置文件示例

以下是一个简单的SpringBoot配置文件示例:

3.1 配置文件的创建

可以在src/main/resources目录下创建一个配置文件,如test.properties、test.yaml、test.json等格式的文件。以下是一个.properties格式的配置文件示例:

spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.max-idle=10
spring.datasource.min-idle=5
spring.datasource.initial-size=5
spring.datasource.time-between-eviction-runs-millis=60000
spring.datasource.max-lifetime=3600000
spring.datasource.validation-query=SELECT 1

3.2 配置文件的读取

在SpringBoot中,可以通过@ConfigurationProperties注解来读取配置文件的属性值,并将其注入到类中。以下是一个简单的示例:

@Configuration
public class AppConfig {
    
    
    @Autowired
    private DataSource dataSource;
    @Bean
    public DataSource dataSource() {
    
    
        return DataSourceBuilder.create().build();
    }
}

在上述代码中,通过@ConfigurationProperties注解来读取test.properties配置文件中的属性值,并将其注入到dataSource中。同时,还定义了一个dataSource()方法来创建一个数据源对象。

3.3 配置文件的使用

在SpringBoot中,可以通过在类中使用@Autowired注解来自动装配配置文件中的属性值。
以下是一个简单的示例:

@Service
public class UserServiceImpl implements UserService {
    
    
    @Autowired
    private UserDao userDao;
    @Autowired
    private DataSource dataSource;
    @Override
    public void addUser(User user) {
    
    
        userDao.addUser(user);
    }
}

在上述代码中,通过@Autowired注解来自动装配UserDao和DataSource对象,并使用它们来实现添加用户的功能。

猜你喜欢

转载自blog.csdn.net/wstever/article/details/129927087
今日推荐