分享Spring中Bean的4种依赖检查模式

开发 后端
在上面的一个例子中,我们看到,通过设立dependency-check="object"属性来在没有找到匹配的情况下抛出错误。这就是类型检查。

下面我们来看看Spring中的Bean的4中依赖检查模式:simple,object,all,none.

1 simple:对基本类型,字符型和集合进行依赖检查。

Java代码

 

  1. xml version="1.0" encoding="UTF-8"?>   
  2. "http://www.springframework.org/dtd/spring-beans.dtd">   
  3. <beans>   
  4. <bean id ="HelloWorld" class="com.jnotnull.HelloWorld"   
  5. autowire="autodectect" dependency-check="simple">   
  6. <bean>   
  7. <bean id="date" class="java.util.Date">   
  8. beans>   

 

 

2 object:对依赖的对象进行检查

Java代码

 

  1. xml version="1.0" encoding="UTF-8"?>   
  2. "http://www.springframework.org/dtd/spring-beans.dtd">   
  3. <beans>   
  4. <bean id ="HelloWorld" class="com.jnotnull.HelloWorld"   
  5. autowire="autodectect" dependency-check="object">   
  6. <bean>   
  7. <bean id="date" class="java.util.Date">   
  8. beans>   

 

 

3 all:对全部属性进行检查

Java代码

 

  1. xml version="1.0" encoding="UTF-8"?>   
  2. "http://www.springframework.org/dtd/spring-beans.dtd">   
  3. <beans>   
  4. <bean id ="HelloWorld" class="com.jnotnull.HelloWorld"   
  5. autowire="autodectect" dependency-check="all">   
  6. <bean>   
  7. <bean id="date" class="java.util.Date">   
  8. beans>   

 

 

4 none:不进行依赖检查:

Java代码

 

  1. xml version="1.0" encoding="UTF-8"?>   
  2. "http://www.springframework.org/dtd/spring-beans.dtd">   
  3. <beans>   
  4. <bean id ="HelloWorld" class="com.jnotnull.HelloWorld"   
  5. autowire="autodectect" dependency-check="none">   
  6. <bean>   
  7. <bean id="date" class="java.util.Date">   
  8. beans>   

 

 

由此我们可以看出,依赖检查一般和自动装载进行配套使用。如果没有自动装载,也就没有依赖检查的必要了。

【编辑推荐】

  1. Java EE进阶之Spring事务深入浅出
  2. Spring事务管理高级应用难点剖析
  3. Spring-MVC入门(一):入门实例
  4. 多图详解Spring框架的设计理念与设计模式
责任编辑:金贺 来源: ITEYE博客
相关推荐

2021-05-06 07:58:57

Spring BeanIOCAOP

2024-03-18 00:00:00

SpringBean设计

2009-06-17 17:04:37

BeanFactorySpring

2024-02-23 10:33:34

SpringBean容器

2023-01-13 07:41:20

BeanSpring容器

2023-10-07 08:35:07

依赖注入Spring

2021-07-05 18:05:40

SpringBean方法

2011-03-18 09:27:00

Spring

2009-07-20 15:08:41

Spring实例化Be

2020-02-10 15:50:18

Spring循环依赖Java

2009-09-08 15:22:20

Spring依赖注入

2009-06-17 17:20:14

BeanFactorySpring

2023-03-27 21:54:48

方式OptionalAutowird

2024-03-01 18:37:39

Spring传递性Maven

2019-05-01 20:35:16

Linux路由器IP地址

2019-05-06 15:50:22

Linux默认网关路由器

2013-12-23 09:48:43

C++锁定模式

2022-06-23 10:47:57

Spring容器工具

2021-12-24 08:00:00

Java漏洞插件

2009-06-29 18:11:40

JSP设计模式
点赞
收藏

51CTO技术栈公众号