我想在Spring中从基于XML的配置切换到基于Java的配置。现在我们在应用程序上下文中有如下内容:
<context:component-scan base-package="foo.bar">
<context:exclude-filter type="annotation" expression="o.s.s.Service"/>
</context:component-scan>
<context:component-scan base-package="foo.baz" />
@ComponentScan(
basePackages = {"foo.bar", "foo.baz"},
excludeFilters = @ComponentScan.Filter(
value= Service.class,
type = FilterType.ANNOTATION
)
)
...它将从两个包中排除服务。我有一种强烈的感觉,我忽略了一些令人尴尬的琐碎事情,但我找不到一种解决方案来将过滤器的范围限制在foo.bar
。
您只需为所需的两个@componentscan
注释创建两个config
类。
例如,您可以为foo.bar
包设置一个config
类:
@Configuration
@ComponentScan(basePackages = {"foo.bar"},
excludeFilters = @ComponentScan.Filter(value = Service.class, type = FilterType.ANNOTATION)
)
public class FooBarConfig {
}
然后是第二个foo.baz
包的config
类:
@Configuration
@ComponentScan(basePackages = {"foo.baz"})
public class FooBazConfig {
}
new AnnotationConfigApplicationContext(FooBarConfig.class, FooBazConfig.class);
另一种选择是,您可以使用第一个config
类上的@org.springframework.context.annotation.import
注释来导入第二个config
类。例如,您可以将foobarconfig
更改为:
@Configuration
@ComponentScan(basePackages = {"foo.bar"},
excludeFilters = @ComponentScan.Filter(value = Service.class, type = FilterType.ANNOTATION)
)
@Import(FooBazConfig.class)
public class FooBarConfig {
}
然后,您可以简单地以以下内容开始您的上下文:
new AnnotationConfigApplicationContext(FooBarConfig.class)
问题内容: 我想在Spring中从基于XML的配置切换为基于Java的配置。现在,我们的应用程序上下文中具有以下内容: 但是如果我写这样的话… …它将从这两个软件包中排除服务。我有一种强烈的感觉,我正在尴尬地忽略一些琐碎的事情,但是找不到解决方案来将过滤器的范围限制为。 问题答案: 你只需要为所需的两个注释创建两个类。 因此,例如,你的包装将有一个类: 然后是你的包裹的二等舱: 然后在实例化Spr
我知道关于这个问题有很多类似的问题,但是,没有一个解决了我的问题。我有一个Spring REST项目,我正在使用Spring Tool Suite(STS)3.5.1版本。 应用程序类: 这是当我尝试使用Spring Boot应用程序运行项目时得到的部分切除。
我还有这个包含ID列表: 我想筛选以便筛选的不包含id来自的对象,因此我尝试使用stream: 我找不到做这件事的正确函数。有人有什么建议让我试试吗?
问题内容: 我想筛选一个像这样的选择: 编辑:添加列模型: 列用于多种用途,并且为了优化我的代码,我需要将其也包含在Select中,但没有类型为“字段”或“映射”的条目 但是,我可以从所有内容中进行选择,甚至包括类型为“字段”和“地图”的条目。有没有一种清洁的方法? 问题答案: AngularJS NOT过滤器 小提琴 从 文档 : “ …谓词可以通过在字符串前面加上!来取反。” “模式对象可用于
我需要wireshark的捕获筛选器,该筛选器将匹配UDP负载中的两个字节。我见过 作为匹配标准,但没有对语法的解释,而且我在任何wireshark wiki中都找不到它(大海捞针)。
我有一个实体,其中一个字段是 我需要得到所有的时间表项目,其中的集合包含一个特定的组(集合可以有很多不同的组也。如果“我的组”是其中之一-它是我需要的)。 如果在没有任何条件的情况下运行代码,我可以在调试器中看到我的包含数据库中的所有项,并且每个项都包含中的组。 截图 当然,我可以“手动”找到我需要的项(例如,使用.stream()),但我肯定有一些方法可以使用谓词来获得它。