@Bean的存在意义

发布时间 2023-10-08 23:15:13作者: 小臣敲键盘

@Bean的存在意义

@Bean注解,这个注解属于用于注册Bean的注解。Spring的@Bean注解用于告诉方法,产生一个Bean对象,然后这个Bean对象交给Spring管理。 产生这个Bean对象的方法Spring只会调用一次,随后这个Spring将会将这个Bean对象放在自己的IOC容器中

如下就能让accountDao方法产生一个AccountDao 对象,然后这个AccountDao 对象交给Spring管理

class A{
        @Bean
        public AccountDao accountDao(){
            return new AccountDao();
        }
    }

为什么要有@Bean注解?

原因很简单:类似@Component , @Repository , @ Controller , @Service 这些注册Bean的注解存在局限性,只能局限作用于自己编写的类,如果是一个jar包第三方库要加入IOC容器的话,这些注解就手无缚鸡之力了,是的,@Bean注解就可以做到这一点!当然除了@Bean注解能做到还有@Import也能把第三方库中的类实例交给spring管理,而且@Import更加方便快捷