如何在另一个类中使用Value Annotations?

时间:2016-11-18 18:31:49

标签: java spring-boot

如何在这里获取我的价值并在另一个班级中使用它?我想创建一个处理所有@Value注释的类,然后其他类可以从这个类中获取这些值。一旦我学会了如何从另一个类中获取值

,我将从主类更改为新类

如何获取这些变量

package.json

打印到主课程

npm install

无需再次调用@Value

1 个答案:

答案 0 :(得分:5)

您可以创建一个使用@Configuration注释的新属性类。在那里,您可以使用@Value为您的Fields注释所需的所有属性。此类可以在需要属性的所有其他spring组件类中自动装配。

这是Configuration类,我在其中映射application.properties文件的属性:

@Configuration
public class MyProperties{

    @Value("{my.property}")
    public String  myProperty;
}

可以按如下方式使用:

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application {

@Autowired
private MyProperties props;

public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
}

@PostConstruct
public void postConstruct() {
    System.out.print("Print my property: " + props.myProperty);
}
}

这对我有用。 希望它会对你有所帮助。