@Configuration可理解为用spring的时候xml里面的<beans>标签

@Bean可理解为用spring的时候xml里面的<bean>标签

package com.reed.ustc;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.reed.ustc.domain.Dog;

@Configuration         
public class ApplicationConfig {

    //定义一个bean,相当于<bean id="dog" class="com.reed.ustc.domain">
    @Bean(name="dog")            
    public Dog getDog(){
        return new Dog("小白","白色");
    }
}

等价于

 <bean name="dog" class="com.reed.ustc.domain">
        <property name="name" value="小白"/>
        <property name="color" value="白色"/>
    </bean>