8.2.8 使用@Required检查注入
8.2.8 使用@Required检查注入
有些时候,可能会因为疏忽忘记为某个setter
方法配置依赖注入:既没有显式通过<property.>
配置依赖注入;也没有使用自动装配执行依赖注入。这种疏忽通常会导致由于被依赖组件没有被注入,当程序运行时调用被依赖组件的方法时就会引发NPE
异常。
为了避免上面的疏忽,可以让Spring
在创建容器时就执行检查,此时需要为setter
方法添加@Required
修饰,这时Spring
会检查该setter
方法:如果开发者既没有显式通过<property>
元素配置依赖注入,也没有使用自动装配执行依赖注入, Spring
容器会报BeanInitializationException
异常。
程序示例
1 | E:\workspace_QingLiangJiJavaEEQiYeYingYongShiZhang5\Required |
例如,如下Chinese
类使用@Required
注解修饰了setGunDog()
方法
1 | public class Chinese implements Person |
上面程序使用@Required
修饰了setGunDog()
方法,这意味着程序必须为该setter
方法配置依赖注入:要么通过<property>
元素配置设值注入,要么通过自动装配来执行依赖注入;否则Spring
启动容器时就会引发异常。