- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Spring学习文档
Spring学习文档1.控制反转:控制反转就是指应用本身不负责依赖对象的创建以及维护,依赖对象的创建及维护由外部容器来负责。这样控制权就转移到了外部容器,控制权的转移就是所谓的反转2.依赖注入:在运行期,由外部容器动态的将依赖对象注入到组件中。注意:由于依赖对象的创建现在已经交给了外部容器,所以容器创建好的对象就要注入到应用,这样是通过构造器参数的方式来实现的。3.使用spring的好处:(1)降低足见之间的耦合度,实现软件各层之间的解耦(2)使用容器能够给我们提供了事务控制等各种服务(3)提供了单例模式。(4)提供了AOP技术(5)提供了多个辅助类(6)对主流框架提供了集成支持4.spring的配置文件名称是随意的5.spring的实例化方式:(1)在类路径下寻找配置文件进行容器实例化ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{“bean.xml”});(2)在文件系统路径下寻找配置文件进行容器实例化ApplicationContext ctx = new FileSystemXmlApplicationContext(new String[]{“D:\\bean.xml”})注意:建议使用类路径即第一种方式,以为第二种方式是有操作系统差异的,并且可以指定多个配置文件,指定多个时候只需要在String数组中继续添加即可6.配置文件中配置bean的时候id和name的区别:当用id进行指定bean能出现特殊字符,但是name中可以出现特殊字符。建议:当没有特殊字符出现的时候尽量用id进行指定7.实例化Bean的三种方法:(1)使用类构造器实例化beanid=personService class=cn.itcast.service.impl.PersonServiceBean/bean(2)使用静态工厂方法实例化创建一个beanfactory类,这个类是个专门实例化bean的类,里面有一个static方法专门进行bean实例创建,此时beans.xml文件中则应该这样写bean id=”bean实例名称” class=”实例化工厂类的名称” factory-method=”创建实例的静态方法名”/bean(3)使用实例工厂方法实例化:创建一个beanfactory类,在该类中声明一个非static的方法进行bean实例的创建,此时在beans.xml文件中则应该首先对beanfactory类进行实例化然后再进行bean的实例化写法如下:bean id=”bean实例化工厂的名称” class=”实例化工程类的名称”/beanbean id=”bean 实例名称” class=”实例化工厂类名称” factory-method=”创建实例的方法名”8.Bean的作用域:(1)singleton:在每个Spring IOC容器中一个bean定义只有一个对象实例。如果不指定bean的scope属性的话,就默认是这种作用域,即每次从spring中get的都是同一个实例。并且默认的是在IOC启动的时候对象进行初始化,只有在属性lazy-init设置为true的时候它才会再getbean的时候进行bean的实例化。9.如果在bean进行实例化的时候我们需要进行一些初始化的方法,那么我们可以通过init-method这个属性进行初始化方法的设定。这时,则会在bean实例以后直接调用init-method中指定的方法。10.我们可以在bean/bean标签中我们可以指定destroy-method属性来指定bean实例销毁之前执行的destroy方法,进行实例初始化过程中使用的资源11.依赖注入总结:方式一,通过setter方法进行注入的方式(1) 在业务层组件中我们可以声明一个依赖对象的属性,然后通过在beans.xml中的配置来实现依赖对象的注入工作。在beans.xml中我们按照下面的方式来编辑bean id=依赖对象名称 class=依赖对象的实现类/beanbean id=应用业务组件名称 class=应用业务组件的实现类 property name=应用业务组件类中依赖对象的属性名称 ref=依赖对象所对应的id/property(2)采用内部bean的方式。这种情况下注入的bean就不能注入到其他的业务层组件中了。此时beans.xml的写法如下bean id=应用业务组件名称 class=应用业务组件实现类 property name=应用业务组件中依赖对象的属性名bean class=依赖对象的实现类/bean/property方式二、使用构造器参数的方式注入:就是在应用业务层组件的构造方法中我们将要使用的依赖对象声明成它的
文档评论(0)