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

什么网站做外贸好简述什么是网络营销

什么网站做外贸好,简述什么是网络营销,对网站做打包备份处理,公司网站建设会计上怎么处理在 Spring 框架中,Autowired 和 Resource 是两个常用的注解,用于实现依赖注入。尽管它们都能达到将依赖对象注入到目标 bean 的目的,但在细节上存在一些显著的差异。本文将深入探讨这两个注解的区别,并结合 Spring 源码进行分析&a…

在 Spring 框架中,@Autowired 和 @Resource 是两个常用的注解,用于实现依赖注入。尽管它们都能达到将依赖对象注入到目标 bean 的目的,但在细节上存在一些显著的差异。本文将深入探讨这两个注解的区别,并结合 Spring 源码进行分析,同时附上源码的执行流程图,帮助您更好地理解它们的工作原理。

一、@Autowired 注解

源码分析

在 Spring 中,@Autowired 的处理主要在 AutowiredAnnotationBeanPostProcessor 类中。当 Spring 容器初始化 bean 时,会遍历 bean 中的属性,如果发现带有 @Autowired 注解的属性,就会尝试从容器中获取对应的 bean 进行注入

代码入口:

public class AutowiredAnnotationBeanPostProcessor extends InstantiationAwareBeanPostProcessorAdapter {public PropertyValues postProcessProperties(PropertyValues pvs, Object bean, String beanName) {/*** 根据当前bean 查找出来所有添加了@AutoWired 属性的* 根据属性实例化 一些注入器*/InjectionMetadata metadata = findAutowiringMetadata(beanName, bean.getClass(), pvs);try {metadata.inject(bean, beanName, pvs);}catch (BeanCreationException ex) {throw ex;}catch (Throwable ex) {throw new BeanCreationException(beanName, "Injection of autowired dependencies failed", ex);}return pvs;}
}

执行流程

  1. Spring 容器扫描带有 @Autowired 注解的属性。
  2. 根据属性的类型在容器中查找匹配的 bean。
  3. 如果找到多个相同类型的 bean,再根据属性名称进行匹配。
  4. 将匹配到的 bean 实例注入到目标属性。

二、@Resource 注解

@Resource 是 JSR-250 规范定义的注解,既可以按照名称进行装配,也可以按照类型进行装配。

源码分析

@Resource 的处理在 Spring 的 CommonAnnotationBeanPostProcessor 类中。

代码入口:

public class CommonAnnotationBeanPostProcessor extends InitDestroyAnnotationBeanPostProcessor implements MergedBeanDefinitionPostProcessor {@Overridepublic PropertyValues postProcessProperties(PropertyValues pvs, Object bean, String beanName) {/*** 根据当前bean 查找出来所有添加了@Resource 属性的* 根据属性实例化 一些注入器*/InjectionMetadata metadata = findResourceMetadata(beanName, bean.getClass(), pvs);try {metadata.inject(bean, beanName, pvs);}catch (Throwable ex) {throw new BeanCreationException(beanName, "Injection of resource dependencies failed", ex);}return pvs;}
}

执行流程

  1. Spring 容器扫描带有 @Resource注解的属性。
  2. 判断是@Resource注解中有名字,并且根据name在spring容器中找不到对应的bean,那么就按照@AutoWired的注入方式进行注入
  3. 条件2 不成立的话那么就按照名字获取一个bean进行注入
http://www.ds6.com.cn/news/122781.html

相关文章:

  • 网页设计基础只是电脑优化大师下载安装
  • 创立网站百度提交收录
  • 网站上登录系统制作完整的品牌推广方案
  • 手机可以做网站关键词优化武汉
  • 苏州网站建设空间百度网址导航
  • 做微信平台网站需要多少钱百度人工服务电话
  • 大连淘宝网站建设seo优化服务
  • 网站制作公司排行榜今日重大军事新闻
  • 备案查询系统爱站工具seo综合查询
  • 小程序开发费用一览表bgd华网天下seo及网络推广招聘
  • 公司高端网站设计公司产品推广方案怎么写
  • 网站被采集 更换模板小红书怎么做关键词排名优化
  • 专门做设计的一个网站百度知道小程序
  • 搜搜提交网站入口网站排名优化软件联系方式
  • 电气毕业设计代做网站网络推广公司服务内容
  • 宝安的医院网站建设容易被百度收录的网站
  • 专业制作网站公司吗淘宝怎么推广自己的产品
  • 做网站有什么作用b站视频推广网站
  • 乱起封神是那个网站开发的重庆seo博客
  • 个人网站制作步骤收录优美图片app
  • 百度收录哪些网站爱站网备案查询
  • 兰州建设厅网站如何推广品牌
  • 郑州建站程序怎么推广网站链接
  • 昆明建设windows优化大师卸载不掉
  • 前端 兼职做网站站长工具下载app
  • 张家口做网站便宜点的南昌搜索引擎优化
  • 没有网怎么装wordpressseo的优化流程
  • 设计师培训怎么样网站推广优化方式
  • 大连网站制作公司深圳网站seo推广
  • 美文的手机网站seo专业学校