• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
思想人生从关注生活开始
博客园    首页    新随笔    联系   管理    订阅  订阅

@ConfigurationProperties简介

@ConfigurationProperties是Spring Boot中用于绑定属性配置文件中的属性值到Java Bean的注解。当我们在application.yml或application.properties文件中配置了某些属性值时,我们可以使用@ConfigurationProperties注解将这些属性绑定到对应的Java Bean上,从而可以在程序中访问和使用这些属性值。

使用@ConfigurationProperties注解需要注意以下几点:

1. 配置类需要使用@Component、@Service、@Controller等注解中的一个标识为Bean,以便Spring容器可以识别并实例化该Bean。

2. 配置类需要使用@ConfigurationProperties注解,指定需要绑定的属性前缀。如果属性没有指定前缀,则使用类名中第一个单词作为前缀。例如,配置类为com.example.MyConfig,则将使用myconfig作为前缀。

3. 在配置文件中,可以按照前缀.属性名=属性值的格式进行配置。例如,如果配置类使用的前缀是myconfig,则可以在配置文件中使用myconfig.property=value的格式进行配置。

4. 在属性值绑定时,Spring Boot会根据属性的类型自动进行类型转换,如果类型不匹配会抛出异常。为了避免类型转换失败的异常,我们可以在Java Bean中设置属性的默认值。

例如,我们可以使用@ConfigurationProperties注解来绑定一个名为com.example.demo的属性配置文件中的属性值:

```java
@Component
@ConfigurationProperties(prefix = "com.example.demo")
public class MyConfig {
private String name;
private int age;
private List<String> hobbies;
// getter和setter
}
```

然后在配置文件application.yml中进行如下配置:

```yaml
com.example.demo.name = John
com.example.demo.age = 18
com.example.demo.hobbies = ["reading","running"]
```

这样,我们就可以在程序中通过MyConfig实例访问配置文件中的属性值了。

posted @ 2023-06-15 16:56  JackYang  阅读(261)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3