首页 > 技术文章 > Spring通过@Configuratin配置Bean

expiator 2018-01-05 16:40 原文

Spring的依赖注入可以基于xml配置,也可以基于注解配置,还可以基于java类配置。

普通的bean类,只要标注了@Configuration注解,就可以为Spring容器提供Bean定义的信息。

每一个标注了@Bean的类方法,相当于提供了Bean的定义信息,可以实现依赖注入。

示例代码:

@Configuration
public class AppConf{
    @Bean
    public UserDao userDao(){
             return new UserDao();
    }
    
    @Bean
    public LogDao logDao(){
             return new LogDdao();
    }

    @Bean
    public LogonService logonService(){
             LogonService logonService=new LogonService();
             logonService.setLogDao(logDao());     
             logonService.setUserDao(userDao());
             return logonService;
   } 

}

以上代码和以下xml配置是等效的:

<bean  id="userDao" class="com.anno.UserDao"/>
<bean id="logDao" class="com.anno.LogDao"/>
<bean id="logonService" class="com.LogonService"
     p:logDao-ref="userDao" p:userDao-ref="logDdao"/>

注:

p表示对该bean里面的属性进行注入,格式为p:属性名=注入的对象
效果与在bean里面使用<property>标签一样

 

参考自《精通Spring企业应用开发实战》

 

推荐阅读