gpt4 book ai didi

java - 来自命令行的 Spring Boot 参数

转载 作者:行者123 更新时间:2023-12-01 16:24:02 25 4
gpt4 key购买 nike

我有带有参数的 SpringBootApplication

public class RocksdbBootApp {
public static void main(String[] args) {
SpringApplication app = new SpringApplication(RocksdbBootApp.class);
app.setDefaultProperties(Collections.singletonMap("server.port", args[0]));
app.run(args);
}
}

如何访问 RestController 中的参数?

@Slf4j
@RestController
@RequestMapping("/api/rocks")
public class RocksApi {
public RocksApi(KeyValueRepository<String, String> rocksDB) {
System.out.println(args[0]);
}
}

最佳答案

要访问传递给应用程序的参数,您可以使用 ApplicationArguments并将其注入(inject)到您的 Controller 中:

@Slf4j
@RestController
@RequestMapping("/api/rocks")
public class RocksApi {

private final ApplicationArguments arguments;

@Autowired //can be ommited in new versions of Spring
public RocksApi(final ApplicationArguments arguments) {
this.arguments = arguments;
}

public RocksApi(KeyValueRepository<String, String> rocksDB) {
String[] args = arguments.getSourceArgs();
System.out.println(args[0]);
}
}

关于java - 来自命令行的 Spring Boot 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62194064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com