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

沈阳网站设计公司有哪些佛山网络营销推广

沈阳网站设计公司有哪些,佛山网络营销推广,iis7 网站防盗链,网络科技工作室经营范围一、springbean的生命周期? 阶段核心接口和实现类详细步骤和描述1、读取并解析配置元信息到BeanDefinitionBeanDefinitionReader—>XmlBeanDefinitionReader #loadBeanDefinitions()读取的源: XML配置bean注解声明的beanpackage扫描、classpath、Groovy文件、properties文…

一、springbean的生命周期?

阶段核心接口和实现类详细步骤和描述
1、读取并解析配置元信息到BeanDefinition

BeanDefinitionReader—>XmlBeanDefinitionReader #loadBeanDefinitions()读取的源:

XML配置bean
注解声明的bean
package扫描、classpath、Groovy文件、properties文件
BeanDefinition->GenericBeanDefinition存储bean的定义信息
2、BeanDefinition注册BeanDefinitionRegistry->DefaultListableBeanFactory#registerBeanDefinition()存入DefaultListableBeanFactory的beanDefinitionMap<String,BeanDefinition>
3、bean实例化1、AbstractBeanFactory#getMergedLocalBeanDefinition()

1、BeanDefinition合并;

2、加载bean对应的class类;

1、读取配置源到BeanDefinition

1)具体源码见:

Spring源码-读取XML文件配置信息-CSDN博客文章浏览阅读176次。4、parseBeanDefinitionElement()方法:解析到BeanDefinitionHolder,BeanDefinitionHolder.getBeanDefinition()就得到BeanDefinition。3、registerBeanDefinitions方法调用parseBeanDefinitions方法进行bean标签doc元素解析。2、doLoadBeanDefinitions()方法:1)读取到Doc里面;2)解析Doc注册为BeanDefinition。https://blog.csdn.net/qq_19952029/article/details/140500505

2)从XML源构建BeanDefinition示例:

/*** xml方式bean配置信息解析*/
@Test
public void test1() {//定义一个spring容器,这个容器默认实现了BeanDefinitionRegistry,所以本身就是一个bean注册器DefaultListableBeanFactory factory = new DefaultListableBeanFactory();//定义一个xml的BeanDefinition读取器,需要传递一个BeanDefinitionRegistry(bean注册器)对象XmlBeanDefinitionReader xmlBeanDefinitionReader = new XmlBeanDefinitionReader(factory);//指定bean xml配置文件的位置String location = "classpath:/com/javacode2018/lesson002/demo2/beans.xml";//通过XmlBeanDefinitionReader加载bean xml文件,然后将解析产生的BeanDefinition注册到容器容器中int countBean = xmlBeanDefinitionReader.loadBeanDefinitions(location);System.out.println(String.format("共注册了 %s 个bean", countBean));//打印出注册的bean的配置信息for (String beanName : factory.getBeanDefinitionNames()) {//通过名称从容器中获取对应的BeanDefinition信息BeanDefinition beanDefinition = factory.getBeanDefinition(beanName);//获取BeanDefinition具体使用的是哪个类String beanDefinitionClassName = beanDefinition.getClass().getName();//通过名称获取bean对象Object bean = factory.getBean(beanName);//打印输出System.out.println(beanName + ":");System.out.println("    beanDefinitionClassName:" + beanDefinitionClassName);System.out.println("    beanDefinition:" + beanDefinition);System.out.println("    bean:" + bean);}
}

2、BeanDefinition注册

1)注册器BeanDefinitionRegistry接口的唯一实现类:DefaultListableBeanFactory

2)将BeanDefinition放到beanDefinitionMap。


@SuppressWarnings("serial")
public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFactoryimplements ConfigurableListableBeanFactory, BeanDefinitionRegistry, Serializable {
private final Map<String, BeanDefinition> beanDefinitionMap = new ConcurrentHashMap<>(256);
@Overridepublic void registerBeanDefinition(String beanName, BeanDefinition beanDefinition)throws BeanDefinitionStoreException {Assert.hasText(beanName, "Bean name must not be empty");Assert.notNull(beanDefinition, "BeanDefinition must not be null");if (beanDefinition instanceof AbstractBeanDefinition) {try {((AbstractBeanDefinition) beanDefinition).validate();}catch (BeanDefinitionValidationException ex) {throw new BeanDefinitionStoreException(beanDefinition.getResourceDescription(), beanName,"Validation of bean definition failed", ex);
http://www.dtcms.com/wzjs/16155.html

相关文章:

  • 上海制作网站的公司长沙seo霜天
  • 做商城网站一般用什么武汉标兵seo
  • 网站建设制作设计开发福建谷歌广告推广怎么做
  • 南山做网站公司品牌全案策划
  • 易企秀网站开发技术苏州网站关键词优化推广
  • dede网站打开速度慢深圳百度seo培训
  • 手机网站制作得多少钱啊杭州百度seo代理
  • 站内推广雷神代刷推广网站
  • 为什么做腾讯网站百度普通收录
  • 做ps彩图什么网站好怎么在百度上做推广上首页
  • 重庆住房城乡建设委员会官方网站找客户资源的软件哪个最靠谱
  • 做像58这种分类信息网站赚钱吗bt磁力兔子引擎
  • 网站修改字体尺寸怎么做汕头seo排名收费
  • 慈溪公司做网站营销方式有哪些
  • 网站的种类如何刷seo关键词排名
  • 广告设计公司有什么岗位北京外包seo公司
  • 南京网站制作建设技能培训班
  • 怎么做网页二维码链接公司排名seo
  • 免费图表制作网站青岛seo服务
  • 制作公司网站设计手绘设计公司网站模板
  • 上海网站设计公司排行榜制作网站需要什么技术
  • 建网站的公司德阳建网站的公司品牌营销策划案例ppt
  • wordpress 5.5客户端如何做关键词优化
  • 单位网站建设工作总结试分析网站推广和优化的原因
  • 黄江网站仿做百度网页制作
  • 哪里学网站建设与管理怎么推广app
  • 网页浏览历史记录在哪强强seo博客
  • 亳州企业网站建设seo工具下载
  • 重庆网站建设有限公司推广app是什么工作
  • 虚拟空间做网站2345电脑版网址导航