在Spring Boot中,可以通过@Value注解、Environment接口、@ConfigurationProperties注解等方式来读取配置文件。
@Value注解读取配置文件中的值:import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component public class MyComponent { @Value("${my.property}") private String myProperty; // ... public void doSomething() { System.out.println(myProperty); } } 上述代码中,@Value("${my.property}")注解用于将配置文件中my.property的值注入到myProperty属性中。
Environment接口读取配置文件中的值:import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.env.Environment; import org.springframework.stereotype.Component; @Component public class MyComponent { @Autowired private Environment env; // ... public void doSomething() { String myProperty = env.getProperty("my.property"); System.out.println(myProperty); } } 上述代码中,通过env.getProperty("my.property")方法来获取配置文件中my.property的值。
@ConfigurationProperties注解读取配置文件中的值:import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "my") public class MyProperties { private String property; // ... public String getProperty() { return property; } public void setProperty(String property) { this.property = property; } } 上述代码中,@ConfigurationProperties(prefix = "my")注解用于将以my为前缀的配置文件属性值注入到同名的属性中。在application.properties配置文件中,可以通过my.property来设置property属性的值。
注意:在使用@ConfigurationProperties注解时,需要在主类上添加@EnableConfigurationProperties(MyProperties.class)注解来启用配置属性的注入。
除了这些方法,还可以使用@PropertySource注解、@Configuration注解等方式来读取配置文件。具体使用哪种方式,取决于你的需求和个人偏好。