Spring中Bean的命名(id和name的区别)

 

<bean id="bounsScoreAop" class="com.util.bonusShop.BounsScoreAop" scope="singleton"/>

 

 

 

-----------------------------------------------------------------------------------------------

1、每个Bean可以有一个id属性,并可以根据该idIoC容器中查找该Bean,该id属性值必须在IoC容器中唯一;

2、可以不指定id属性,只指定全限定类名,如:

<bean class="com.zyh.spring3.hello.StaticBeanFactory"></bean>

此时需要通过接口getBean(Class<T> requiredType)来获取Bean

如果该Bean找不到则抛异常:NoSuchBeanDefinitionException

如果该类型的Bean有多个则抛异常:NoUniqueBeanDefinitionException

3、如果不指定id,只指定name,那么nameBean的标识符,并且需要在容器中唯一;

4、同时指定nameid,此时id为标识符,而nameBean的别名,两者都可以找到目标Bean

5Idname的区别:name可以有特殊字符

你可能感兴趣的:(Spring中Bean的命名(id和name的区别))