您的位置:首页 > 科技 > 能源 > 品牌设计主要做什么_crm管理营销_线下推广团队_百度账户托管运营

品牌设计主要做什么_crm管理营销_线下推广团队_百度账户托管运营

2025/2/25 18:33:00 来源:https://blog.csdn.net/weixin_44431371/article/details/143272616  浏览:    关键词:品牌设计主要做什么_crm管理营销_线下推广团队_百度账户托管运营
品牌设计主要做什么_crm管理营销_线下推广团队_百度账户托管运营

Spring加载注解和配置文件概述

  • Spring容器实际上就是很多的Map组成的

在这里插入图片描述

在这里插入图片描述

  • 配置文件的加载过程

通过IO流将XML读取到内存,dom4j解析成document,获取到node节点之后,取出key和value,放到具体的对象中去。

  • 注解的加载过程

注解通过反射的方式,获取到Class对象,通过调用Class对象的getAnnotation解析,如果加了@Component、@Service等,就将它创建对象

无论是注解还是XML,解析完成之后都会变成一个BeanDefinition(Bean的定义信息,例如id,class这些),放到一个BeanDefinitionMap中去。

Spring源码的扩展性

在创建对象的时候应该有一个接口,因为我们还可以通过properties、json、yaml等形式来创建对象,我们可以通过这个接口来定义这些文件的解析规范。

这样我们只要实现了这个接口,我们就可以用不同格式的配置文件来创建对象了。

这个接口就是BeanDefinitionReader,它是用来读取我们的Bean对象的。同样我们就可以根据它写一个XmlBeanDefinitionReader、JsonBeanDefinitionReader、PropertiesBeanDefinitionReader

反射效率低的问题

当创建的对象非常非常多的时候,反射的效率才低,我们一般使用没有任何问题

在这里插入图片描述

在创建对象dataSource的时候,value的值全部是引用的db.properties文件中的,此时它是包含在BeanDefintion的,但是需要在创建对象的之前替换成真实的值的。

BeanFactory是访问容器的根接口,所以它是可以修改容器的内容的。

所以可以通过BeanFactory对BeanDefintion来进行修改,BeanFactory中有一个额外的扩展接口就是BeanFactoryPostProcessor,可以通过它(具体来说是通过它的实现类)来进行一个修改。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 后置处理器又叫增强器

生活变成了纯粹的耐力问题,以及和绝望对抗的心理问题。

当时我妈结果出来了,我们这些子女可能还有些幻想,她不会发展得那么快。我见过很多高龄的知识分子,有的人90多岁,头脑非常清楚。人到这个时候就会产生一种对于公平感的质疑,很自然地就会想,这事不公平。为什么轮到了我?你无法用因果关系来解释这个事情。

她的脑子似乎有某种怪物,日复一日地蚕食她的记忆。与此同时,她的词汇量越来越少,由一个能够很清晰地表达自己的人,慢慢地变成了一个对于任何事情都无法表达的人。我女儿形容说,奶奶的大脑就像被虫子吃了一样。你看着这个过程一点一点走,心里是非常痛的。

https://baijiahao.baidu.com/s?id=1795912177129418680&wfr=spider&for=pc

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com