程式設計方式
在程式設計方式模型中,CommandRegistration
可以定義為一個 @Bean
,它將自動註冊。
@Bean
CommandRegistration commandRegistration() {
return CommandRegistration.builder()
.command("mycommand")
.build();
}
如果您的所有命令有一些共同之處,則會建立一個 CommandRegistration.BuilderSupplier 例項,該例項可以自動裝配。此供應商的預設實現返回一個新的構建器,因此您無需擔心其內部狀態。
程式設計方式註冊的命令會自動新增幫助選項中提到的幫助選項。 |
如果定義了此供應商型別的 bean,則自動配置將退避,為您提供重新定義預設功能的選項。
@Bean
CommandRegistration commandRegistration(CommandRegistration.BuilderSupplier builder) {
return builder.get()
.command("mycommand")
.build();
}
如果您想集中修改上述供應商提供的構建器例項,可以定義 CommandRegistrationCustomizer
bean。
@Bean
CommandRegistrationCustomizer commandRegistrationCustomizerExample() {
return builder -> {
// customize instance of CommandRegistration.Builder
};
}