spring属性文件读取的几种方式有什么区别

小编 158

spring属性文件读取的几种方式有应用场景的区别:名列前茅种@Value注解,多用于读取较少数量或没有相同前缀的属性值;第二种@ConfigurationProperties注解,多用于当需要读取多个且前缀相同的属性值;第三种Environment对象,多用于获取系统加载的全部配置文件中的属性值。

1.@Value注解

使用@Value注解,默认读取的是application.properties。如果是自定义的配置文件,则需要用@PropertySource来指定具体要读取的配置文件。此方式一般多用于读取较少数量或没有相同前缀的属性值。

2.@ConfigurationProperties注解

当需要读取多个且前缀相同的属性值时,可使用注解@ConfigurationProperties读取配置文件数据。但需要注意的是,使用此方式读取配置文件中的属性值时,读取的配置文件需要被激活。

3.Environment对象

Environment对象的使用非常方便,在被spring管理的类可以直接注入Environment对象的实例,通过其getProperty方法获得相应的属性值。使用Environment无需指定配置文件,获取的是系统加载的全部配置文件中的属性值;但要注意配置文件的编码格式。

延伸阅读

Spring有哪些配置方式

1.XML配置文件

Bean 所需的依赖项和服务在XML格式的配置文件中指定。这些配置文件通常包含许多bean定义和特定于应用程序的配置选项,它们通常以bean标签开头。

2.注解配置

可以通过在相关的类、方法或字段声明上使用注解,将Bean配置为组件类本身,而不是使用XML来描述Bean装配。默认情况下,Spring容器中未打开注解装配。因此,需要在使用它之前在Spring配置文件中启用它。

3.Java Config配置

Spring的Java配置是通过使用@Bean和@Configuration来实现。

  • @Bean注解扮演与<bean /> 元素相同的角色。用到方法上,表示当前方法的返回值是一个bean。
  • @Configuration类允许通过简单地调用同一个类中的其他@Bean方法来定义Bean间依赖关系。相当于spring的配置文件XML。

这几种方式没有什么所谓的优劣之分,主要看使用情况,一般来说是这样:涉及到全局配置的,例如数据库相关配置、MVC相关配置等,就用Java Config 配置的方式;涉及到业务配置的,就使用注解配置方式。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部