spring4笔记----“零配置”:spring提供的几个Annotation标注

@Component  :标注一个普通的Spring Bean类

@Controller    :标注一个控制器组件器

@Service        :标注一个业务逻辑组件器

@Repository   :标注一个DAO组件类

 在默认的情况之下,spring会自动的搜索所有上面的标注的java类,并把它们当成Spring Bean处理

spring3.0

@DependsOn  :用于强制初始化其他bean  @DependsOn({"chinese","usa"})

@Lazy             :用于指定该bean是否取消预初始化   例如:@lazy(true)

spring 4.0

@Autowired  :指定自动装配 ,当标注setter方法时,默认采用byType自动装配政策


通过<component-scan .../>(<component-scan base-package="..."/>)元素添加<include-filter ../>或<exclude-filter .../>  子元素来指定Spring Bean类(指定路径java类满足这种规则,即使没有Annotation标注,spring也会把他们当作Bean类来处理)



<include-filter ../>元素用于指定满足该规则的java类会被当成Bean类来处理

<exclude-filter .../>  元素指定满足规则的java类不会被当做Bean类来处理

使用这两种元素时都要求指定如下的两个属性:

type:指定过滤器类型

expression:指定过滤器所需要的表达式


spring内建支持如下的四种过滤器

annotation: annotation过滤器,需要指定一个Annotation名,如:lin.AnnotationTest

assignable: 类名过滤器,直接指定一个java类

regex:正则表达式过滤器,匹配表达式的java类满足该过滤规则,如:com.example.Default.*

aspectj:AspectJ过滤器,如:com.example..*Service+

原文地址:https://www.cnblogs.com/tk55/p/6507538.html