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

高端企业网站建设蓦然郑州网站建设6免费wordpress导购主题

高端企业网站建设蓦然郑州网站建设6,免费wordpress导购主题,辽宁省朝阳市做网站,农业技术网站建设原则文章目录 前言基础通俗理解bean作用域 前言 最近学习spring的一些基础概念#xff0c;所以就先了解了bean对象的概念#xff0c;而且发现这个里面涉及到很多的内容#xff0c;比如在spring中一个bean对象是如何创建以及销毁的这些概念#xff0c;所以就打算总结一些spring… 文章目录 前言基础通俗理解bean作用域 前言 最近学习spring的一些基础概念所以就先了解了bean对象的概念而且发现这个里面涉及到很多的内容比如在spring中一个bean对象是如何创建以及销毁的这些概念所以就打算总结一些spring中的bean对象生命周期的内容 基础 在我们使用的Spring框架中一定有一个概念是我们避不过去的那就是bean 这个概念bean是一个一个独立的对象而对象就必然涉及到生命周期的概念那么在bean对象中的生命周期有哪些呢 一共六个阶段 Bean定义、实例化、属性赋值、初始化、生存期、销毁。 通俗理解 简单的来说一个Bean的生命周期分为四个阶段 1、 实例化(Instantiation) 2、 属性设置(populate) 3、 初始化(Initialization) 4、 销毁(Destruction) 这里我们先开始说实例化阶段实例化阶段就是通过sprint的容器在创建运行时将我们的对象通过反射进行实例化而这个时候实例化的对象内部是空的也就是说我们这个对象中的成员属性还没有被赋值。 第二步是给这个对象中的属性进行赋值这个操作对应的就是上面说得属性设置(populate) // 基于BeanDefinition来创建beanprivate Object doCreateBean(String beanName, BeanDefinition beanDefinition) {Class beanClass beanDefinition.getBeanClass();var code 0e7f97a3-f7b8-46e5-a6a0-aea52f7a41aftry {//第一个阶段 实例化Constructor declaredConstructor beanClass.getDeclaredConstructor();Object instance declaredConstructor.newInstance();//第二个阶段 填充属性Field[] fields beanClass.getDeclaredFields();for (Field field : fields) {if (field.isAnnotationPresent(Autowired.class)) {String fieldName field.getName();Object bean getBean(fieldName);field.setAccessible(true);field.set(instance, bean);}}//以下三个步骤都是在初始化阶段的前后进行执行的所以属于初始化阶段的内容// Aware回调if (instance instanceof BeanNameAware) {((BeanNameAware)instance).setBeanName(beanName);}// 初始化if (instance instanceof InitializingBean) {((InitializingBean)instance).afterPropertiesSet();}for (BeanPostProcessor beanPostProcessor: beanPostProcessorList) {beanPostProcessor.postProcessAfterInitialization(beanName, instance);}return instance;} catch (NoSuchMethodException e) {e.printStackTrace();} catch (IllegalAccessException e) {e.printStackTrace();} catch (InstantiationException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();}return null;}单独说一下这部分 这里是三个spring中的三个接口这三个接口对应的是BeanNameAware spring的一个回调接口这个接口可以设置bean的名字 InitializingBean 这个是bean对象初始化的接口这是在初始化是spring要调用的接口。 BeanPostProcessor 这个是bean对象初始化前后使用的的接口也就是说bean对象生成前后的操作。 这三个接口是可以通过自己的对应的类去实现这个几个接口后spring在给你这个类生成bean对象时进行调用实现的接口。 这里给出的截图是一个spring bean配置信息。这里圈出部分是对应这个bean对象被创建和销毁的时候要执行的方法可以看到init-method对应的参数是初始化方法以及destory-method这里指定的销毁方法也就是在bean被销毁的时候执行还可以通过DisposableBean这个接口去实现销毁的方法 以上这些就是spring bean对象的一个从出生到销毁经理的过程。 bean作用域 那么bean对象也有对应的作用域比如一个普通的bean对象有单例和原型两种类型单例类型的bean对象全局唯一使用的是设计模式中单例模式也就是说只会被创建一次spring默认使用单例模式而原型模式这里的对象就是与单例相反每次获取到的bean对象都是不一样的它被创建出来以后就不会spring的容器管理了。 那说完普通的bean对象以后就要说到一些不普通的了比如我们每次前端向后端发送请求的时候大家知道到后端以后会生成request对象这个对象默认就不是单例模式每次发送的请求中都会生成一个request对象。 还有一个关于在请求中使用的对象seesion对象这个对象是单例对象它的生命周期保存到了一个完整的会话也就是我们通过浏览器访问页面是这个页面如果不关闭以及长时间不操作而超时那么这个session对象是一直存在的。 在Spring框架中Bean的作用域定义了每个Bean实例的生命周期和可见范围。Spring提供了以下几种常用的Bean作用域 单例Singleton默认的作用域每个容器中只有一个Bean实例存在所有对该Bean的请求都会返回同一个实例。单例Bean在容器启动时被创建直到容器关闭才销毁。 原型Prototype每次对Bean的请求都会创建一个新的实例。每个原型Bean在被请求时都会被实例化Spring不会对其进行缓存或管理因此需要手动管理这些Bean的生命周期。 会话Session每个会话Web应用中的用户会话都会产生一个独立的Bean实例。只适用于Web应用每个用户会话中可以访问到自己的独立Bean实例不同用户之间的会话互不干扰。 请求Request每个HTTP请求都会创建一个新的Bean实例。只适用于Web应用每个请求中可以访问到自己的独立Bean实例不同请求之间的Bean实例互不干扰。 除了上述的作用域Spring还提供了一些其他的作用域包括会话代理Session-scoped proxy和请求代理Request-scoped proxy。会话代理是会话作用域的Bean的代理对象而请求代理是请求作用域的Bean的代理对象。这些代理对象可以在需要时延迟初始化和注入避免过早地创建和销毁Bean实例。 在配置Bean的作用域时可以使用XML配置文件、注解或Java配置类来指定作用域。例如使用Scope注解可以在Bean类上标注作用域使用scope属性来指定作用域的名称。例如 Component Scope(prototype) public class MyBean {// Bean的定义 }上述代码将创建一个原型作用域的Bean。 ​
http://www.yutouwan.com/news/127584/

相关文章:

  • 帝国cms怎么做网站大连制作企业网站
  • 入侵dedecms网站管理员密码技术支持:上海网站建设
  • 做牙的网站叫什么html5新特性
  • 织梦网站查看原有文章网站维护与建设考试
  • 门户网站等保二级建设方案品牌管理公司网站建设
  • 网站网站营销特点电商网站开发系列
  • 会做网站有什么可以做吗潍坊专业技术人员继续教育
  • 网站的规划建设如何布局网站文章的作用
  • 做deal网站免费的wordpress
  • 怎样做网站亮照亮标电子商务网站建设与管理的重要性
  • 黑龙江能源建设网站唐山注册公司网上申请入口
  • 沈阳网站前端在线美图秀秀在线制作
  • 蛋白质结构预测工具网站开发企业融资计划
  • 网站图片特效源码wordpress小人插件
  • 爱网站关键词挖掘工具搜搜网站收录
  • 网站建设保障措施重庆交通建设集团有限公司网站
  • 怎么自助建站网站建设捌金手指下拉二六
  • 长兴县住房和城乡建设局 网站网站域名费用交给谁
  • 百度网站类型网站权重一般有几个等级
  • 集约化网站建设的核心网站搭建wordpress
  • 宁波高端网站设计价格网站移动版怎么做
  • 好的装修效果图网站中国门户网站有哪些
  • 宁波正规网站建设方式wordpress 分析
  • 简单一点的网站建设百度账号注册申请
  • 网站开发公司流程成都高端网站制作公司
  • 做农产品交易网站统计网站访客人数
  • 郑州市做网站的做设计开店的网站
  • 网站seo诊断书建瓯企业网站建设
  • 百度速页建站个人网站备案能几个
  • 建网站报价wordpress 婚礼主题