- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我的代码中有以下注释:
@ComponentScan(basePackageClasses={MyClass.class},
excludeFilters={@Filter(Component.class)}, //@Component
includeFilters={@Filter(type=ASSIGNABLE_TYPE, classes=MyClass.class)}
)
MyClass
用 @Component
注释,但仍想在组件扫描期间包含它。但是,组件扫描过滤器似乎使用 and 逻辑而不是 or。我如何实现我想做的事情?
最佳答案
@Configuration
在所有情况下都比 @ComponentScan
更具确定性。
而不是解决 @ComponentScan
注释。您应该尝试在 @Configuration
类中将您的 MyClass.class
显式列为 @Bean
,例如:
@Configuration
public class MyClassConfiguraiton {
@Bean
public MyClass myClass() {
return new MyClass();
}
}
然后显式@Import
配置类而不是@ComponentScan
注解:
@Import(MyClassConfiguratrion.class)
或者通过组件扫描机制导入它(因为 @Configuration
是用 @Component
进行元注释的)。
关于java - 如何排除除@ComponentScan 下的一个类之外的所有@Component 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38722617/
我看到我们有 @org.springframework.context.annotation.ComponentScans 和 @org.springframework.context.annotat
我想向我的 Spring WebApplicationContext 添加一个特定的 Controller 类。我遇到了以下示例:(它是 Scala 中的,但改编自此处: using Componen
场景复现 为了统一定制一个过滤器(Filter),所以在另外一个工程里面创建了一个过滤器,并通过jar包的方法导入当前项目,通过@ComponentScan({"org.example.
我为我的 Spring Application Context 进行了以下设置. @Configuration public class RmiContext { @Bean public R
我正在使用注释设置一个非常小的带有 Boot 的 Spring/REST/JPA 项目。 当我将 JPA 存储库类移到不同的包并在其包上调用 componentscan 时,我在具有 Autowire
我正在使用 Java 11 和 Spring 开发 JavaFX 应用程序。应用程序模块使用 jlink 与自定义 JRE 捆绑在一起,它只允许命名模块包含在 bundle 中。由于 Spring 不
我想找到以编程方式设置“@componentScan”的“basepackages”的方法。 我有这样的东西: @Configuration @EnableWebMvc @ComponentScan(
在我的 Spring Boot 项目中,我必须使用一个外部库,它在 Spring 上下文中定义了 beans。因此,在我的应用程序类中,我在下面添加了我的项目和外部库的基础包, @SpringBoot
@ComponentScan( //CS1 basePackages = {"com.package.A", "com.package.B"}, excludeFilters = @
@ComponentScan 将为您提供包中所有带有 @Component 注释的类的列表(或 @Service/@Repository).为此,我想他们使用反射来枚举包中的所有类并找到带有该注释的类
我的课上有以下 spring header @Service @EnableAutoConfiguration(exclude = {HibernateJpaAutoConfiguration.cla
我对 Spring 比较陌生,并且正在学习一些示例。 在其中一个示例中,我注意到 Spring 没有将 URI 映射到方法。 我发现我将 @ComponentScan 注释放在错误的配置类上并解决了我
我正在关注有关 Spring MVC 的教程,但我无法理解 @ComponentScan 的某些内容即使在阅读了 spring API 文档之后也可以进行注释,所以这里是示例代码: 配置 View C
我不知道如何在测试中排除配置(例如 described here )。我真正想要的是忽略 @WebMvcTest 中的配置,但即使下面的更简单的示例对我来说也不起作用: @ExtendWith(Spr
我有包裹一: xxx.yyy.zzz { SampleClass1.java } 和包二: xxx.yyy.zzz { SampleClass2.java } 并打包三个: aaa.bbb.ccc
“context:componentscan”可以扫描自定义注释吗?如果是这样,扫描后它会将扫描的 bean 存储在应用程序上下文中的什么位置?我如何访问结果? 最佳答案 我们在 XML 配置文件中注
我遇到了 @ComponentScan @Configuration 的问题测试类——即 @ComponentScan无意中拉入 @Configuration在集成测试期间。 例如,假设您在 src/
我有带有包布局的 spring boot 应用程序示例: main: -com.foo Application.java -com.foo.services Item
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题吗? 更新问题,以便 editing this post 提供事实和引用来回答它. 关闭 7 年前。 Improve
我想在 Spring 中从基于 XML 的配置切换到基于 Java 的配置。现在我们的应用程序上下文中有这样的东西: 但是如果我写这样的东西...... @ComponentScan
我是一名优秀的程序员,十分优秀!