复制
收藏
提问
全网

以下注解中,表示如果开发者没有提供JdbcOperations,则Spring Boot会自动向容器中注入一个JdbcOperations的是( D ) A、@ConditionalOnSingleCondidate(JdbcOperations.class) B、@ConditionalOnClass(JdbcOperations.class) C、@ConditionalOnMissingBean(JdbcOperations.class) D@EnableConfigurationProPerties(JdbcOperations.class)

4月前
全网
文档
学术
百科
知识库
时间不限
自动

理解问题以下注解中,表示如果开发者没有提供JdbcOperations,则Spring Boot会自动向容器中注入一个JdbcOperations的是( D ) A、@ConditionalOnSingleCondidate(JdbcOperations.class) B、@ConditionalOnClass(JdbcOperations.class) C、@ConditionalOnMissingBean(JdbcOperations.class) D@EnableConfigurationProPerties(JdbcOperations.class)

已完成理解以下注解中,表示如果开发者没有提供JdbcOperations,则Spring Boot会自动向容器中注入一个JdbcOperations的是( D ) A、@ConditionalOnSingleCondidate(JdbcOperations.class) B、@ConditionalOnClass(JdbcOperations.class) C、@ConditionalOnMissingBean(JdbcOperations.class) D@EnableConfigurationProPerties(JdbcOperations.class)

展开阅读网页

回答简洁
更专业一些

正确答案是 C、@ConditionalOnMissingBean(JdbcOperations.class)。

@ConditionalOnMissingBean 注解是 Spring 中用于条件注册 Bean 的一种方式。它的作用是在项目启动时,Spring 容器会检查是否已经存在指定类型的 Bean。如果不存在,那么使用 @ConditionalOnMissingBean 注解的 Bean 就会被注册到容器中。如果已经存在,则不会注册。这个注解通常用在 @Bean 定义上,确保在没有开发者自定义的 Bean 时,提供一个默认的实现2

选项 A、@ConditionalOnSingleCandidate(JdbcOperations.class) 表示如果存在且仅存在一个候选的 Bean 时,才会注册该 Bean。选项 B、@ConditionalOnClass(JdbcOperations.class) 表示如果类路径下存在指定的类,则注册该 Bean。选项 D、@EnableConfigurationProperties(JdbcOperations.class) 用于启用配置属性,与条件注册 Bean 无关48

因此,如果开发者没有提供 JdbcOperations,Spring Boot 会自动向容器中注入一个 JdbcOperations,应该使用 @ConditionalOnMissingBean(JdbcOperations.class)。7

推荐追问
Spring Boot自动注入JdbcOperations的条件是什么?
@ConditionalOnMissingBean注解的作用是什么?
Spring Boot的条件注解有哪些?
@EnableConfigurationProperties注解的作用是什么?
Spring Boot如何实现自动配置?
JdbcOperations接口在Spring Boot中的作用是什么?
在线客服