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

做解决方案的网站品牌策划公司哪家好

做解决方案的网站,品牌策划公司哪家好,营销策划公司有哪些公司,做网站要多少钱一个众所周知在Spring的Bean当中是存在两种作用域的&#xff0c;即单例模式与多例模式&#xff0c;可通过scope来指定 下面就是注册一个多例Bean <bean id"people" class"org.qlspringframework.beans.ioc.bean.People" scope"prototype"> …

众所周知在Spring的Bean当中是存在两种作用域的,即单例模式与多例模式,可通过scope来指定

下面就是注册一个多例Bean

<bean id="people" class="org.qlspringframework.beans.ioc.bean.People" scope="prototype">  <property name="name" value="derek"/>  
</bean>

那么什么是单例模式什么是多例模式呢?说白了其实就是与是否通过Spring的完整生命周期有关,对于单例模式的Bean,会通过完整的生命周期来创建,同时也会将Bean加入到Spring的缓存当中,再次获取会从缓存当中拿。那么多例模式就不会产生这种情况,每一次通过get()方法获取 Bean的时候都是重新创建。

下面看一下如何实现scope作用域支持

首先Bean的作用域是通过BeanDefinition定义的,那我们就需要在其中定义相关属性,除此之外Bean的默认作用域是单例,也就是说在用户未指定的情况下应保持singleton。

BeanDefinition

public static String SCOPE_SINGLETON = "singleton";  public static String SCOPE_PROTOTYPE = "prototype";  private String scope = SCOPE_SINGLETON;// 单列模式  
private boolean singleton = true;  // 多列模式  
private boolean prototype = false;  public void setScope(String scope){  this.scope = scope;  this.singleton = SCOPE_SINGLETON.equals(scope);  this.prototype = SCOPE_PROTOTYPE.equals(scope);  
}  public boolean isSingleton() {  return this.singleton;  
}  public boolean isPrototype() {  return this.prototype;  
}

之后就是对XML的解析过程

XmlBeanDefinitionReader


```java
String beanScope = bean.attributeValue(SCOPE_ATTRIBUTE);  beanDefinition.setDestroyMethodName(destroyMethodName);  
if (StrUtil.isNotEmpty(beanScope)) {  beanDefinition.setScope(beanScope);  
}

这样我们的基础准备就完毕了,剩下的是对执行Bean生命周期的过程进行修改

首先就是多例Bean在创建完毕后不需要加入缓存

AbstractAutowireCapableBeanFactory

// 创建完毕后加入缓存  
if (beanDefinition.isSingleton()){  super.addSingletonBean(beanName, bean);  
}

其次对于多例Bean不需要提前初始化

DefaultListableBeanFactory

/**  * 提前实例化所有单例Bean。  */  
@Override  
public void preInstantiateSingletons() {  beanDefinitionMap.forEach((key,value) -> {  if (value.isSingleton()){  super.getBean(key);  }  });  
}
http://www.dtcms.com/wzjs/328719.html

相关文章:

  • 国际新闻头条今日要闻苏州seo服务热线
  • 树莓派做影视网站最新时事热点
  • 人力资源和社会保障部教育培训网搜索引擎优化的缺点包括
  • 郴州网站建设公司有哪些广告优化师工作内容
  • 新网站2个月没有收录登录注册入口
  • 山东手机版建站系统哪家好长沙seo报价
  • 网站建设做网站可以吗网络营销包括的主要内容有
  • 自助建站 平台网站推广的策略
  • 做网站页面的视频国际新闻今天最新消息
  • 邢台做网站的那好aso关键词优化工具
  • python做网站多么百度图片搜索入口
  • wordpress首页翻页南昌seo排名
  • 东莞网站建设工作室今日新闻简报
  • 政府网站集约化建设办发搜狗站长工具综合查询
  • 农村做网站赚钱sem竞价代运营
  • 网站建设及使用怎么制作自己的网站
  • 做网站用香港服务器好吗网站换友链平台
  • wordpress首页文章随机显示seo标题关键词优化
  • 郑州建设局网站中小企业网站优化
  • WordPress需要编程知识吗seo能干一辈子吗
  • wordpress seo自定义魔贝课凡seo
  • phpcms学校网站模板网站做优化一开始怎么做
  • 长沙商业网站建设网站推广的方法有哪些
  • 做网站主页效果图网络营销都有哪些形式
  • 临沭有做网站的吗seo软文推广工具
  • 政府采购网上商城网站德阳seo
  • 空包网站怎么做近几年的网络营销案例
  • 徐州做网站关键词工具
  • 年度考核表个人总结网站建设店铺推广
  • 网络平台的推广营销方案太原关键词优化软件