Bean的生命周期 AutoWire的配置 集合注入 注入Hibernate的SessionFactory.pptxVIP

Bean的生命周期 AutoWire的配置 集合注入 注入Hibernate的SessionFactory.pptx

  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文档。上传文档
查看更多
Bean的生命周期 AutoWire的配置 集合注入 注入Hibernate的SessionFactory

Spring第二天Bean的生命周期AutoWire的配置集合注入注入Hibernate的SessionFactoryBean的生命周期1、理解Singleton2、理解PrototypeBean的作用域作用域定义singleton在每一个spring容器中,一个Bean定义只有一个对象实例(默认)prototype允许Bean的定义可以被实例化任意次(每次调用都创建一个实例)request在一次HTTP请求中,每个Bean定义对应一个实例。该作用域仅在基于web的Spring上下文(例如SpringMVC)中才有效。session在一个HTTP Session中,每个Bean定义对应一个实例。该作用域仅在基于web的Spring上下文(例如SpringMVC)中才有效。global-session在一个全局HTTP Session中,每个Bean定义对应一个实例。该作用域仅在Portlet上下文中才有效。Bean的初始化和销毁在开发一个Bean的时候,如果提供了初始化的方法和销毁的方法,则可以在spring的beans.xml中配置bean标签的init-method属性和destroy-method属性,它们的值分别为Bean的初始化方法名和销毁方法名。Spring在实例创建和销毁的时候分别调用这个Bean的初始化方法和销毁方法。如果beans.xml文件中所有的bean都有相同的创建方法和销毁方法,则还可以在beans标签中统一标注创建方法和销毁方法。原来我们使用的是ApplicationContext这个接口来接收ClassPathXmlApplicationContext的实例或者FileSystemXmlApplicationContext的实例,现在可以使用AbstractApplicationContext抽象类类型的变量来接收它们的实例。其中AbstractApplicationContext这个抽象类提供了close()方法,用以关闭applicationContext上下文,并销毁bean工厂中的所有bean。1、对于scope为singleton的bean,默认情况下在ApplicationContext创建的时候实例化2、对于scope为prototype的bean,默认情况下是在调用getBean方法的时候实例化3、如果bean声明的语句中指定了lazy-init=“true”,则对于singleton也会在getBean的时候才去实例化,如果bean在声明过程中有什么问题,也只能到实际调用getBean方法的时候才能看到结果,这个是我们所不愿意看到的。1、Spring对Bean进行实例化2、Spring将值和Bean的引用注入进Bean对应的属性中3、如果Bean实现了BeanNameAware接口,Spring将Bean的ID传递给setBeanName()接口方法4、如果Bean实现了BeanFactoryAware接口,Spring将调用setBeanFactory()接口方法,将BeanFactory容器实例传入。5、如果Bean实现了ApplicationContextAware接口,Spring将调用setApplicationContext()接口方法,将应用上下文的引用传入6、如果Bean实现了BeanPostProcessor接口,Spring将调用它们的postProcessBeforeInitialization()接口方法。7、如果Bean实现了InitializingBean接口,Spring将调用它们的afterPropertiesSet()接口方法。类似的,如果Bean使用init-method声明了初始化方法,该方法也会被调用。8、如果Bean实现了BeanPostProcessor接口,Spring将调用它们的postProcessAfterInitialization()方法。9、此时此刻,Bean已经准备就绪,可以被应用程序使用了,它们将一直驻留在应用上下文中,直到改应用上下文被销毁。10、如果Bean实现了DisposableBean接口,Spring将调用它们的destory()接口方法。同样,如果Bean使用destory-method声明了销毁方法,该方法也会被调用。AutoWire的配置1、掌握根据名字自动注入2、掌握根据类型自动注入Spring的自动装配(autowire)byName:把与bean的属性具有相同名字(或者ID)的其他Bean自动装配到Bean的对应属性中。如果没有跟属性的名字相匹配的Bean,则该属性不进行装配。byType:把与Bean的属性具有相同类型的其他Bean自动装配到Bean的对应属性中。如果没有跟属性的类型相匹配的B

文档评论(0)

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

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

1亿VIP精品文档

相关文档