将参数传递到下面的TestConfig.class的最佳方法是什么?我无法理解......请帮忙
从命令行调用这样的方法
com.test.app.Launcher --param.1=test1 --param.2=test2
主要方法代码是:
public static void main(String[] args) throws Throwable {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(TestConfig.class);
// ...
}
稍后在程序中,我想访问如下参数......
public class TestConfig {
// how do I access the values in clps here? is this right??
@Autowired
private Environment env;
private final String PARAM_1 = env.getProperty("param.1");
private final String PARAM_2 = env.getProperty("param.2");
}
答案 0 :(得分:0)
就像在堆栈溢出的几个answer上可以看到的那样,您可以使用@Value
来“导入”值:
@Value("${my.param}")
private String param;
这些参数可以来自多个来源,-D
和real command line parameters形状的命令行参数是一个。有关支持的来源列表,请参阅here。