- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Spring简介
还是通过旧版本学习必威体育精装版的版本。
2003年发布的第一个版本,现在必威体育精装版的是3.1。
Rod Johnson
官方网站:
Spring的优点:
? 低侵入式设计,代码污染低
? 独立于各种应用服务器,可以真正实现Write Once,Run Anywhere的承诺
? Spring的DI(Dependency Injection)机制降低了业务对象替换的复杂性
? Spring并不完全依赖于Spring组件,开发者可自由选用Spring框架的部分或全部。
Spring3.1分层架构
Spring的安装配置
Spring HelloWorld
1、 下载
spring-framework-3.1.0.RELEASE-with-docs.zip
2、 新建Project,把Spring的jar包引入到项目的ClassPath中
commons-logging-1.1.1-bin.zip的jar包也需要引入
Spring3.1下载包解压后的dist目录下
3、 在ClassPath里面新建Spring配置文件applicationContext.xml
4、 新建一个Java类HelloWorld
a) 提供构造器
b) 定义一个测试属性info,并提供setter
5、 让Spring来管理对象的创建和依赖关系,必须在Spring配置文件中定义
?xml version=1.0 encoding=UTF-8?
beans
xmlns=/schema/beans
xmlns:xsi=/2001/XMLSchema-instance
xmlns:p=/schema/p
xsi:schemaLocation=/schema/beans /schema/beans/spring-beans-3.0.xsd
!-- 配置需要被Spring管理的Bean(创建,创建后放在了Spring IOC容器里面)--
bean id=hello class=net.vzhang.spring3.HelloWorld
!-- 配置该Bean需要注入的属性(是通过属性set方法来注入的) --
property name=info value=Happy New Year!/
/bean
/beans
6、 测试获取这个被Spring管理的Bean的实例(HelloWorldTest.java)
//获取Spring的ApplicationContext配置文件,注入IOC容器中
//(Map: key:String, bean标签的id属性值 == value:Object, bean标签class属性所指类的实例)
BeanFactory factory = new ClassPathXmlApplicationContext(applicationContext.xml);
//通过BeanFactory的getBean方法,从IOC容器里面获取Bean
HelloWorld hw1 = (HelloWorld)factory.getBean(hello);//map.get(hello)
System.out.println(hw1.getInfo());
System.out.println(---------------------);
HelloWorld hw2 = (HelloWorld)factory.getBean(hello);
System.out.println(hw2.getInfo());
System.out.println(hw1);
System.out.println(hw2);
Spring的控制反转(IOC)和依赖注入(DI)
控制反转(IOC)
控制反转(Inversion Of Control)就是当一个对象需要依赖于另一个对象时,通常由调用对象来创建被调用对象的实例。在Spring中,创建被调用对象的工作不再由调用对象来完成,而是由Spring容器来完成,然后注入调用对象,这就是Spring的控制反转。
Spring IOC容器的关键点:
? 必须将被管理的对象定义到Spring配置文件中
? 必须定义构造器和需要注入的属性的setter,让Spring将对象注入过来
依赖注入(DI)
依赖注入(Dependency Injection)是时下的“流行语”,也是目前最优秀的解耦方式,使用依赖注入时,JavaEE应用中的各种组件不需要以硬编码的方式耦合在一起。当某个Java实例需要其他Java实例时,系统会自动提供需要的实例,无需程序显式获取。
依赖注入,是Spring的核心机制,可以使Spring的bean以配置文件组织在一起,而不是以硬编码的方式耦
文档评论(0)