当前位置: 首页 > news >正文

生物医药网站建设怎样查询网站的点击量

生物医药网站建设,怎样查询网站的点击量,做有趣的网站,上海建筑工程公司排行榜Spring学习笔记6 Bean的实例化方式_biubiubiu0706的博客-CSDN博客 Spring其实就是一个管理Bean对象的工厂.它负责对象的创建,对象的销毁. 这样我们才可以知道在哪个时间节点上调用了哪个类的哪个方法,知道代码该写在哪里 Bean的生命周期之粗略5步 Bean生命周期的管理可以参考S…

Spring学习笔记6 Bean的实例化方式_biubiubiu0706的博客-CSDN博客

Spring其实就是一个管理Bean对象的工厂.它负责对象的创建,对象的销毁.

这样我们才可以知道在哪个时间节点上调用了哪个类的哪个方法,知道代码该写在哪里

Bean的生命周期之粗略5步

Bean生命周期的管理可以参考Spring的源码:

AbstractAutowireCapableBeanFactory

Bean的生命周期之粗略7步

比前面增加了两步,这两步放在上面第三步:初始化Bean  自定义init方法的前后

可以假如"Bean后处理器"

需要这个类实现BeanPostProcessor类,并重写before和after方法

Bean的生命周期10步

就是又增加了三个接口

Aware相关的接口包括:BeanNameAware,BeanClassLoaderAware,BeanFactoryAware

当Bean实现了BeanNameAware,Spring会将Bean的名字传递给Bean

当Bean实现了BeanClassLoaderAware,Spring会将加载该Bean的类加载器传递给Bean

当Bean实现了BeanFactoryAware,Spring会将Bean工厂对象传递给Bean

测试以上十步,让类实现5个接口,并实现所有方法:

BeanNameAware

BeanClassLoaderAware

BeanFactoryAware

InitializingBean

DisposableBean

package com.example.bean;import org.springframework.beans.BeansException;
import org.springframework.beans.factory.*;/*** Bean的生命周期按照粗略的5步:* 1.实例化Bean(调用无参构造方法)* 2.给Bean属性赋值(调用set方法)* 3.调用init方法,注意这个init方法需要自己写,自己配(方法名随意)* 4.可以使用bean* 5.销毁Bean,会调用destroy方法,需要自己写,自己配(方法名随意)* @author hrui* @date 2023/9/24 3:16*/
public class User implements BeanNameAware, BeanClassLoaderAware, BeanFactoryAware, InitializingBean ,DisposableBean{private String name;public void setName(String name) {System.out.println("第二步:给对象属性赋值");this.name = name;}public User() {System.out.println("第一步,无参构造方法执行");}public void initBean(){System.out.println("第三步:调用initBean方法");}public void destoryBean(){System.out.println("第五步:destoryBean方法销毁Bean");}@Overridepublic void setBeanClassLoader(ClassLoader classLoader) {System.out.println("这个Bean的类加载器:"+classLoader);}@Overridepublic void setBeanFactory(BeanFactory beanFactory) throws BeansException {System.out.println("这个Bean的BeanFactory:"+beanFactory);}@Overridepublic void setBeanName(String name) {System.out.println("这个Bean的Name:"+name);}@Overridepublic void afterPropertiesSet() throws Exception {System.out.println("InitializingBean的afterPropertiesSet方法");}@Overridepublic void destroy() throws Exception {System.out.println("DisposableBean的destroy方法");}
}

Bean的生命周期中,不同的作用域有不同的管理方式

Spring是根据Bean的作用域来选择管理方式的.

对于singleton作用域的Bean,Spring能够精确地知道该Bean何时被创建,合适初始化,以及何时被销毁

而对于protoType作用域的Bean,Spring只负责创建,当容器创建了Bean的实例后,Bean的实例就交给客户端代码管理,Spring容器将不再跟踪其生命周期.

Spring容器只对singleton的bean进行完整的生命周期管理

如果是prototype作用域的Bean,Spring容器只负责将该Bean初始化完毕.等客户端程序一旦获取到该Bean之后,Spring容器就不再管理该对象生命周期

也就是说scope是prottype的Bean执行完"Bean后处理器"交给客户端使用后就不管了

将自己new的对象让Spring管理

有时候可能会遇到这样的需求,某个java对象是我们自己new的,然后我们希望这个对象被Spring容器管理,怎么实现.

之前都是Spring配置文件中配置,然后纳入Spring容器管理

如果我们想让该对象让Spring容器管理,但是又不想在配置文件里配置怎么办

例如

但是这个Bean并不由Spring管理

怎么办?用

DefaultListableBeanFactory注册

http://www.yayakq.cn/news/31579/

相关文章:

  • 网站的系统建设方式有哪些内容建站网站的图片
  • 网站服务公司名称重庆门户网站开发报价
  • 仓储设备东莞网站建设网站建设泽宇
  • 做网站哪里买空间好化妆品的网站建设
  • 做网站什么东西需要费用注册公司代理电话
  • 网站注册备案之后怎么做朗格手表网站
  • 做网站要准备什么网上进货渠道有哪些平台
  • vs2017网站开发我国经济总量
  • 网站开发编写籍贯代码招商加盟网站系统
  • 网站的ftp管理权限是什么意思metro网站模板
  • 做网站采集内容网站技术方案怎么写
  • 建站公司前途成都装修培训学校
  • 长沙优化网站厂家抚州专业的企业网站建设公司
  • 专注宜昌网站建设线下推广
  • jsp网站开发广告位雅虎网站优化怎么做
  • 北京公司网站建设报价表什么叫百度竞价推广
  • 金融品牌网站设计组建团队建设网站与开发需要多少钱
  • 如何让自己的网站排在前面wordpress主题uehtml
  • 浅谈中兴电子商务网站建设网络直播营销的方式有哪些
  • 免费网站制作模板抚州网站seo
  • ssh网站开发的书籍广州微网站建设咨询
  • 网站开发培训长沙 外贸网站建设公司价格
  • 在线网站地图生成器dedecms采集规则各类网站
  • 网站设计中怎么设置当前元素不可见中国纪检监察报范耀庚
  • 汉中建站公司怎么建立网站免费的
  • 上传了网站标志怎么弄凡科做的手机网站可以导出来
  • 网站管理系统后台不能发布文章了网站飘落怎么做
  • 网站建设练手项目盐城建设网站
  • 怎么用dw做带登陆的网站网站开发和游戏开发的区别
  • 做论坛网站如何赚钱的开网店的一年的费用