当前位置: 首页 > 知识库问答 >
问题:

注册过滤器时@bean和@component之间的区别?

宿景曜
2023-03-14
   @Bean
    public Filter AuthenticationFilter() {
        return new AuthenticationFilter();
    }
@Component
public class AuthenticationFilter implements Filter {}

我不明白两者之间有什么区别,为什么我要用一个而不是另一个?

共有1个答案

姜俊逸
2023-03-14

这很大程度上取决于个人喜好。

使用@component需要启用组件扫描。有些人不喜欢使用组件扫描,因为他们发现这样很难确定bean的来源。使用@bean方法声明所有内容可以避免这种情况,但代价是编写(稍微)更多的Java配置。

使用@bean的另一个原因是,您可能对筛选器的源没有任何控制,也就是说,您不能使用@component对其进行注释,因此使用@bean方法声明它是唯一的选择。

 类似资料:
  • 本文向大家介绍Spring中@Bean和@Component批注之间的区别。,包括了Spring中@Bean和@Component批注之间的区别。的使用技巧和注意事项,需要的朋友参考一下  Spring支持多种类型的注释,例如@ Component,@ Controller,@ service @Repository和@Bean。所有这些都可以在org.springframework.stereo

  • 问题内容: 可以将CSS选择器传递给jQuery函数,例如: jQuery还具有一些过滤器,例如和: 我一直在寻找某种语法规则来区分两者,并且我想也许jQuery过滤器总是使用。 但是,某些CSS选择器也使用。例如: 有没有人知道您使用的是CSS选择器还是jQuery过滤器的任何智能提示? 问题答案: 我一直在寻找某种语法规则来区分两者,并且我想也许jQuery过滤器总是使用。 但是,某些CSS选

  • void register_prefilter(mixed function) Use this to dynamically register prefilters to run templates through before they are compiled. See template prefilters for more information on how to setup a pr

  • 问题内容: Django中具有多个参数的过滤器和链式过滤器之间的区别 问题答案: 正如你在生成的SQL语句中看到的那样,差异不是某些人可能怀疑的“或”。这是WHERE和JOIN放置的方式。 Example1(相同的联接表):来自https://docs.djangoproject.com/en/dev/topics/db/queries/#spanning-multi-valued-relatio

  • 问题内容: 为什么在这种情况下不能使用? 但可以使用 生成同一事物的两种方式不是吗? 问题答案: 并做两件事。此处的其他答案将更详细地解释,但更为简单: 告诉Spring’这是此类的一个实例,请保留该类,并在我询问时将其还给我’。 说“请给我一个该类的实例,例如,我@Bean之前用注释创建的一个实例”。 那有意义吗?在第一个示例中,你要让Spring给你一个的实例,但是你从未创建一个实例,因此Sp

  • void register_postfilter(mixed function) Use this to dynamically register postfilters to run templates through after they are compiled. See template postfilters for more information on how to setup a