15-Spring基础编程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第15章 Spring 基础编程 本课教学内容 Spring框架入门 Spring框架的基本使用方法 依赖注入 其他问题 Spring 框架入门 耦合性和控制反转 耦合性是软件工程中的一个重要概念。对象之间的耦合性就是对象之间的依赖性。对象之间的耦合越高,维护成本越高。因此对象的设计应使类和构件之间的耦合最小 Spring 框架入门 使用反射机制,修改后,需要切换的时候只需在LoginAction内改变类名,工厂内就会自动生成对象返回给LoginAction。在LoginAction 中,由于类名是字符串,因此,就可以将该字符串写在一个配置文件内,让LoginAction读入,这样,当CustomerDao类名需要切换时,就直接修改配置文件就行了。不用改源代码,模块之间的耦合就完全由配置文件决定 Spring 框架入门 BeanFactory 类的通用性很强,就可以将其框架化。因此,框架化之后,对象的生成由框架参考配置文件进行,和具体实现类的源代码无关,将对象生成的控制权由修改不方便的源代码转变为修改相对方便的配置文件与几乎不进行修改的框架进行,这就是控制反转(Inverse Of Control,IOC)的原理 Spring 框架简介 IOC 思想给降低对象间耦合性带来了巨大的好处,但是,IOC 毕竟只是一种思想,不同的程序员写出来的基于 IOC 思想的应用,风格可能不一样,影响程序的标准化。因此,有 必要对 IOC 来进行标准化,让程序员在某个标准下进行开发。Spring 就是这样一个框架,在使用的过程中,受到了广泛的承认 Spring 框架简介 以 Spring2.5 版本为例,点击 Spring2.5 下面的Download链接,可以根据提示下载。用 户可以下载源文件、开发包和文档等。一般情况下,将开发包解压缩之后,将其中的.jar 文 件拷贝到 Web 项目的 lib 目录下,或者 Java 项目的 classpath 下即可。不过,MyEclipse 软件给我们提供了对 Spring 框架的支持,如果使用 MyEclipse,则不需要导入开发包 Spring 框架的基本使用方法 导入 Spring 框架 具体代码案例见课本 applicationContext.xml 文件,是 Spring 配置文件 Spring 2.5 Core Libraries,它包含 Spring 的开发包 编写被调用方及其接口 *具体代码示例见课本 编写 Spring 配置文件 Spring 配置文件名为:applicationContext.xml,一般不要修改名称,并放在 src 目录下,该文件的主要目的是配置需要实例化的对象 编写 Spring 配置文件 编写调用方 具体代码示例见课本 LoginAction 完全和 CustomerDao 脱离了耦合。如果要将调用方从 CustomerDao 改为 CustomerDao2,只需要让 CustomerDao2 实现 ICustomerDao 接口 依赖注入 Spring 配置文件的核心体现在: bean id=icdao class=dao.CustomerDao/bean 依赖注入 表示让框架实例化一个 dao.CustomerDao 对象,名为 icdao,这就是控制反转原理的实现。但是,在 Spring 中,还有一个很重要的功能,那就是依赖注入。依赖注入,通俗的说,就是可以由配置文件决定向某个对象中存入值 属性注入 *具体配置代码见课本 构造函数注入 具体配置代码见课本 在编程时,如果有带参数的构造函数,就有必要再写一个不带参数的构造函数,供系统底层在反射时调用。否则如果用户没有使用构造函数注入,而采用其他方法,类中又没有无参构造函数,系统就无法反射 两种注入方式的总结和比较 如果属性是简单数据,属性注入的格式如下: property name=属性名 value值/value /property 两种注入方式的总结和比较 如果是一个对象,则属性注入的格式如下: property name=属性名 ref local=对象名 / /property 两种注入方式的总结和比较 如果属性是简单数据,构造函数注入的格式如下: constructor-arg index=参数序号 type=参数类型 value参数的值/value /constructor-arg 两种注入方式的总结和比较 如果是一个对象,则构造函数注入的格式如下: constructor-arg index=参数序号 type=参数类型 ref=对象名 /constru

文档评论(0)

xina171127 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档