Spring 配置文件中 dependency-check 依赖检查的灵活性不够,并不能满足我们所有的需求
Spring还提供一种更加灵活的检查方式
@Required注解检查 但他只检查属性是否已经设置而不会测试属性是否非空
下面我们看一下如何使用Spring提供的此机制
首先我们需要在程序里面加上注解
- @Required
- public void setProduct(Product product) {
- this.product = product;
- }
注意@ Required只能设置在setter方法上
接着我们需要在 配置文件中加上这样一句话
- <bean class="org.springframework.beans.factory.annotation.
- RequiredAnnotationBeanPostProcessor"/>
这是Spring的一个处理器用于检查
如果Spring的版本是2.5或以上,我们可以直接用下列方式来配置
- <beans
- xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:p="http://www.springframework.org/schema/p"
- <span style="color:#ff0000;">xmlns:context="http://www.springframework.org/schema/context"</span>
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
- <span style="color:#ff0000;">http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd</span>">
- <span style="color:#ff0000;"><context:annotation-config/></span>
这样就配置完成了,这样如果任何带有@Required的属性未设置的话 将会抛出BeanInitializationException异常