import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component
public class AppConfig {
@Value("${app.name}")
private String appName;
@Value("${app.version}")
private String appVersion;
public String getAppName() {
return appName;
}
public String getAppVersion() {
return appVersion;
}
}import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class AppController {
private final AppConfig appConfig;
@Autowired
public AppController(AppConfig appConfig) {
this.appConfig = appConfig;
}
@GetMapping("/app")
public String getAppInfo() {
String appName = appConfig.getAppName();
String appVersion = appConfig.getAppVersion();
return "App Name: " + appName + ", App Version: " + appVersion;
}
}在Spring Boot中使用@Value注解可以方便地获取配置文件中的属性值。我们可以通过在类中使用@Value注解来注入配置文件中的属性值,以及在Spring Bean的构造函数或方法参数中使用注解来注入相应的属性值。
在上面的示例中,我们定义了一个AppConfig类,使用@Value注解注入了配置文件中的属性值。我们可以通过调用AppConfig类中相应的方法来获取属性值。
在AppController类中,我们通过构造函数注入了AppConfig实例,并在@GetMapping注解的方法中使用了appConfig的属性值。
使用@Value注解可以很方便地获取配置文件中的属性值,使得我们在开发Spring Boot应用程序时能够更好地管理和使用配置信息。