指定Spring IOC 容器扫描的包
可以通过reource-pattern 指定扫描的资源
<context:include-filter>子节点表示要包含的目标类 ,包含该子节点需要use-default-filters配合使用
<context:exclude-filter>子节点表示要排除在外的目标类
<context:component-scan base-package="annotation" resource-pattern="repository/*.class" use-default-filters="false">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Repository"/>
<context:include-filter type="annotation" expression="org.springframework.stereotype.Repository"/>
</context:component-scan>
使用assignable方式
<context:component-scan base-package="annotation" use-default-filters="false" >
<context:exclude-filter type="assignable" expression="annotation.repository.UserRepository"/>
<context:include-filter type="assignable" expression="annotation.repository.UserRepository"/>
</context:component-scan>
-------------------------------------------------------------------------------------------------------------------------------------
<context:component-scan base-package="annotation" ></context:component-scan>
@Autowired注解自动装配具有兼容性的单个Bean属性
构造器,普通字段(即使是非public),一切具有参数的方法都可以应用
@Autowired 注解
默认情况下,所以使用@Autowired注解的属性都将需要被设置,当Spring找不到
匹配的Bean装配属性时,会抛异常,若某一属性允许不被设置,可以设置@Autowired 注解的required属性为false
默认情况下,当IOC容器里存在多个兼任的Bean时,通过类型的自动装配
将无法正常工作,此时可以在@Qualifier注解里提供Bean 的名称,Spring允许对方法的入参标注@Qualifiter已指定注入Bean的名称
@Autowired 注解也可以应用在数组类型的属性上,此时Spring会将所以匹配的Bean进行自动装配
@Autowired 注解也可以应用在集合属性上,此时Spring读取该集合的类型信息,然后自动装配所有与之兼任的Bean
@Autowired 注解用在java.util.Map上时,若该Map的键值为String,那么Spring将会自动装配与之Map值兼任的Bean,此时Bean 的名称作为键值