博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring框架IoC和传统bean调用的区别
阅读量:5297 次
发布时间:2019-06-14

本文共 1255 字,大约阅读时间需要 4 分钟。

传统方式:通过接口访问对象必须经过实例化,这样就必然增加了代码之间的耦合度,而其调用时必须了解接口实现类中定义的内容,同时不同意对生成的对象进行管理。

容器管理方式:当程序中用到该对象时,依赖容器进行实例化。实现方法调用是只须参考接口中实现的方法。当对象实例后通过容器提供的方法,对生成的对象进行管理,使用完毕后将对该实例对象进行消除。

 

Spring依赖注入的方式有三种:接口注入、设置属性注入、构造方法注入。

构造方法注入,在构造期间即创建一个完整、合法的对象。避免了繁琐的setter方法。

设置属性注入,通过setter方法设定依赖关系。这种方式简单直观,因而在Spring的注入里大量使用。下面举个例子。

 

1 public class Person { 2     public String name; 3     public String password; 4     public boolean islogin; 5      6     public void setName(String name){ 7         this.name = name; 8     } 9     public void setPassword(String password){10         this.password = password;11     }12     public void setChock(boolean islogin){13         this.islogin = islogin;14     }15 }

 

1 public class Factory {2     public static void main(String[] args) {3         XmlBeanFactory bFactory = new XmlBeanFactory(new ClassPathResource(4                 "Spring.xml"));5         Person person = (Person) bFactory.getBean("person");6         System.out.println("姓名:" + person.name + "  密码:" + person.password7                 + "  状态:" + person.islogin);8     }9 }

Spring.xml

1 
2
7 8
9
10
11
12
13

 

 

转载于:https://www.cnblogs.com/lihuiyy/archive/2012/05/18/2507361.html

你可能感兴趣的文章
input的value中有特殊字符
查看>>
字符串压缩
查看>>
用Lua定制Redis命令
查看>>
小程序-canvas在IOS手机层级最高无法展示问题
查看>>
「 Luogu P2285 」打鼹鼠
查看>>
lua语言入门之Sublime Text设置lua的Build System
查看>>
解决win8使用内置管理员不能打开应用商城、天气等问题
查看>>
vue.js基础
查看>>
电脑的自带图标的显示
查看>>
globalization与全球化
查看>>
[转载] redis 的两种持久化方式及原理
查看>>
关于在Idea 创建Maven项目时,无法在source文件下创建servlet文件问题解决!
查看>>
对 HTTP 304 的理解
查看>>
深入理解css中的margin属性
查看>>
C++ 删除字符串的两种实现方式
查看>>
电容选型
查看>>
ORA-01502: 索引'P_ABCD.PK_WEB_BASE'或这类索引的分区处于不可用状态
查看>>
Spring EL hello world实例
查看>>
百度地图API地理位置和坐标转换
查看>>
MyBatis学习总结(六)——调用存储过程
查看>>