Spring.xml中配置注解context:annotation-config和context:component-scan简述

时间:2022-06-05 11:55:17

XML中context:annotation-config和context:component-scan简述


<context:annotation-config/>                           中文意思:<上下文:注解——配置/>

<context:component-scan base-package=" 扫描路劲"   annotation-config=true/>    中文意思:<上下文:部件——扫描  基础——包=“扫描路径”

注解——配置=true/>(annotation-config=true是默认的配置可省略不写)

1.<context:annotation-config/> 

<context:annotation-config/>配置的作用:是向Spring容器注册一次注入四个BeanPostProcessor

  • AutowiredAnnotationBeanPostProcessor
  • CommonAnnotationBeanPostProcessor
  • PersistenceAnnotationBeanPostProcessor
  • RequiredAnnotationBeanPostProcessor

AutowiredAnnotationBeanPostProcessor旧版注入方式<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>作用是能使用@Autowired注解

CommonAnnotationBeanPostProcessor旧版注入方式<bean class="org.springframework.beans.factory.annotation.CommonAnnotationBeanPostProcessor"/>作用是能使用@Resource、@PostConstruct、@PreDestroy注解;

PersistenceAnnotationBeanPostProcessor旧版注入方式<bean class="org.springframework.beans.factory.annotation.PersistenceAnnotationBeanPostProcessor"/>作用是能使用@PersistenceContext注解;

RequiredAnnotationBeanPostProcessor旧版注入方式<bean class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor"/>作用是能使用@Required注解;

<context:annotation-config/>的总结即在XML文件中配置<context:annotation-config/>不需要再配置上面四个ben对象;

2.<context:component-scan base-package=" 扫描路劲"   annotation-config=true/>

  作用:具有<context:component-config/>注解的功能,还能对指定的package下扫描以及注册javabean