@Bean是方法级注解,您可以在@Configuration注解的类或@Component注解 的类中使用@Bean注解。
要声明 bean,可以使用@Bean注解 对方法进行 注解。您可以使用此方法在指定为该方法的返回值的类型的ApplicationContext内注册 bean 定义。默认情况下,Bean 名称与方法名称相同。
bean 名称以小写字母开头,并从那里用驼峰式大小写。这样的名称的示例包括accountManager,accountService,userDao,loginController等。
以下示例显示了使用@Bean注解的方法声明:
1 |
|
前面的配置与下面的 Spring 的XML文件相关配置完全等效:
1 | <beans> |
即:transferService -> com.acme.TransferServiceImpl
这两个声明使一个名为transferService的 bean 在ApplicationContext中可用,并绑定到TransferServiceImpl类型的对象实例
自定义 Bean 命名
默认情况下,配置类使用@Bean方法的名称作为结果 bean 的名称。但是,可以使用name属性覆盖此功能,如以下示例所示:
1 |
|
有时希望为单个 bean 提供多个名称,否则称为 bean 别名。 @Bean注解的name属性为此目的接受一个 String 数组。以下示例说明如何为 bean 设置多个别名:
1 |
|