我必须将大型 Spring boot 应用程序转换为灵活的 CLI 工具,其中 Spring boot 应用程序发送的请求(除其他外)由命令行中的用户输入确定。我决定使用 picocli 来实现命令行功能,但是我不知道如何做一些简单的事情,例如如果用户传递给定的选项标志,将一些文本打印到 stdout,Spring boot 只是像平常一样运行。我应该如何写这个以便 picocli 可以与 Spring boot 一起运行(并最终控制所有 Spring boot 的东西)
是否可以根据某个键值(例如列表项的长度)对排序列表进行切片?如果是这样,如何?
例如,我得到一个这样的排序列表:
sorted_list = sorted(some_list, key=len)
Run Code Online (Sandbox Code Playgroud)
现在我想得到一个切片,其中包含所有具有最低和相等 len 的项目(即 len: 的所有项目min(sorted_list, key=len)),它应该是排序列表的头部。
我有一个带有private final WebClient webClient. 而其余的私有最终字段可以使用 Lombok 提供的 @RequiredArgsConstructor 进行初始化。Spring-Webflux WebClient 对象似乎只能像这样初始化:this.webClient = WebClientBuilder.build()因此 lombok 生成的构造函数不起作用。
有没有解决的办法?
示例代码:
@RequiredArgsConstructor
@Controller
public class SomeController {
private final SomeService someService;
private final SomeConfig someConfig;
private final SomeOtherConfig someOtherConfig;
private final WebClient webClient;
// etc.
}
Run Code Online (Sandbox Code Playgroud)