- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2012A Srping第一节课内容:2011/11/15 晚
第一点:怎么去看待Srping框架。
回顾我们之前写过的程序的基本结构:
Dao daoImpl Factory (其中应用到了单模式) Service ServiceImpl 、Action中应用到了ServiceImpl。
那么这个时候我们是否想过我们这样做有哪些缺点?
首先 我们应用了很多的工厂类(用工厂的目的是什么呢?), 在程序的代码中new很多对象,那么这个时候我们对这些配置并没有统一的去管理,而是散落在各个javaBean中。
为了使这一部分能够统一的进行系统的管理, 我们引入了Spring框架。
例如:
1、ServiceImpl 中用到了daoImpl 对象,我们说: servieImpl 依赖于daoIMpl, 这是一种依赖关系, action 中用到了serviceImpl 我们知道 action依赖于serviceImpl, 他们都有这种依赖关系。
2另一种情况: hibernate 中的session创建,事务的开启和关闭, 都是我们手动来管理的, hibernate来处理的,但是这个时候我们也可以交个spring来处理, 也就是说。 我们将对象的创建和这种依赖关系、事务交给Spring。。。处理。
本来我们的处理可以理解为 A类用到B类,那么A是直接的去拿B类的东西。
用到Spring后, 我们只需要在Spring中声明,A和B的关系, 告诉A你用到了B,通过Srping主动的将B的对象给(注入给)A。这是我们应用到Spring后跟以往不同的第一个地方。
通过以上的内容我们知道了Srping能够为我们做什么!我们必须知道:依赖性注入含义。含义:当我们需要使用一个类的对象时,我们不需要自己找这个对象, 而是通过第三方容器给我们注入进来。
第二点:刚开始学Spring我们需要了解几个关键的词语:
IOC:Inversion of Control(控制反转):
Ioc说白了,就是容器控制程序之间的关系。而非传统的程序代码直接控制。所谓控制反转就是控制权有应用代码中转移到外部容器中,控制权的转移,即所谓的反转。
DI: Dependency Injection (依赖性注入)
AOP:Aspect-Oriented Programming(面向切面编程)ORM:对象关系映射(Srping框架中的,而是hibernate和ibatis比如我们的表和vo以及配置xml文件映射表)
第三点: 了解Srping的核心:即IOC容器
该容器提供了Srping的基本功能。 该容器的的主要组件是BeanFactory,他是工厂模式的实现,BeanFactory使用控制反转(IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开(说白了就是将一切对象的创建交给了Srping处理)
第四点: 了解Srping源文件包的内容:
dist: 存放Spring的核心Jar文件、
doc:存放Srping的帮助文档、
lib: 该目录存放Srping的第三方Jar文件,例如整合时候我们用到的某些文件
sample:存放Spring提供的一些实力程序
src:存放Spring 框架的所有源文件
第五点: 我们写一个基本的依赖注入关系需要的Jar包:
dist/spring.jar
lib/Jakarta-commons/commons-logging.jar
lib/log4j/log4j-1.2.14.jar
应用上面的三个jar包即可来完成依赖注入关系。
第六点: Srping的注入方式:第一点是构造方法的注入、第二点是set方法的注入,第三种接口注入(不讲,不常用因为侵入性强)
构造方法和set方法注入的区别:(时机早晚有差别:构造方法注入时间比setter时间早)
构造方法会在实例化Manager的时候直接就将实例化好的sqlServerDaoImp(以上面的为例)对象注入进来,时机比较早。
Set方法注入:将Manager实例化后,再调用setDao方法将sqlServerDaoImpl对象注入进来。
为什么常用set而不用构造方法这种方式注入?依赖的对象较多时, 构造方法的注入方式会显得构造方法非常的冗长,setter方法显示直观。所以应用上以set方法为主。
第七点: 我们应用Spring时候需要获取bean。以下是获取beanFactory的方法。
1、常用的是BeanFactory bean=new ClassPathXmlApplicationContext(applicationContext.xml);
UserService service=(UserServic
文档评论(0)