Java 如何不基于其他bean创建bean?
我有一个配置类,其中用@configuration注释。创建2个bean。这些bean使用@Profile进行注释,因此如果配置文件设置为Java 如何不基于其他bean创建bean?,java,spring,spring-boot,lombok,Java,Spring,Spring Boot,Lombok,我有一个配置类,其中用@configuration注释。创建2个bean。这些bean使用@Profile进行注释,因此如果配置文件设置为prod,那么它将被实例化 我正在使用Lombok,我的一个类用@RequiredArgsConstructor注释,我有几个私有final字段,基本上是Lombok在后台自动连接的。从它自动连接的bean中,该类中只有一个方法依赖于这些bean,并且该方法基本上只能在生产环境中使用 我遇到的问题是,如何告诉lombok不要实例化bean 配置: @Confi
prod
,那么它将被实例化
我正在使用Lombok,我的一个类用@RequiredArgsConstructor
注释,我有几个私有final
字段,基本上是Lombok在后台自动连接的。从它自动连接的bean中,该类中只有一个方法依赖于这些bean,并且该方法基本上只能在生产环境中使用
我遇到的问题是,如何告诉lombok不要实例化bean
配置:
@Configuration
@Profile("PROD")
@RequiredArgsConstructor
public class ClientFilterConfiguration {
@Bean
public Client createClient() {
... return client;
}
@Bean
public Filter createFilterBean(){
....return filter;
}
}
类别:
@Slf4j
@RestController
@RequiredArgsConstructor
@RequestMapping("/client")
public class ClientController {
private final Admin admin;
private final AdminDuo adminDuo;
private final Client client;
private final Filter filter;
public void clientPurchase(){
...
}
}
获取以下错误:
…需要找不到类型为“com.example.Client”的bean。
行动: 考虑在配置中定义“COM.Simult.Client”类型的bean。
该类中只有一个方法依赖于客户机和筛选器bean,因此有没有办法防止该错误?将该方法放在另一个控制器中,并用
@Profile(“PROD”)
注释。或者将这两种参数类型更改为可选和可选。将该方法放在另一个控制器中,并用@Profile(“PROD”)
注释。或者将这两种参数类型更改为可选和可选。