@Autowired:构造器,参数,方法,属性;都是从容器中获取参数组件的值
*     1)、[标注在方法位置]:@Bean+方法参数;参数从容器中获取;默认不写@Autowired效果是一样的;都能自动装配
*     2)、[标在构造器上]:如果组件只有一个有参构造器,这个有参构造器的@Autowired可以省略,参数位置的组件还是可以自动从容器中获取
*     3)、放在参数位置:




*自定义组件想要使用Spring容器底层的一些组件(ApplicationContext,BeanFactory,xxx);
*     自定义组件实现xxxAware;在创建对象的时候,会调用接口规定的方法注入相关组件;Aware;
*     把Spring底层一些组件注入到自定义的Bean中;
*     xxxAware:功能使用xxxProcessor;
*        ApplicationContextAware==》ApplicationContextAwareProcessor

package com.dym.bean;import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.EmbeddedValueResolverAware;
import org.springframework.stereotype.Component;
import org.springframework.util.StringValueResolver;@Component
public class Red implements ApplicationContextAware,BeanNameAware,EmbeddedValueResolverAware {private ApplicationContext applicationContext;@Overridepublic void setApplicationContext(ApplicationContext applicationContext) throws BeansException {// TODO Auto-generated method stubSystem.out.println("传入的ioc:"+applicationContext);this.applicationContext = applicationContext;}@Overridepublic void setBeanName(String name) {// TODO Auto-generated method stubSystem.out.println("当前bean的名字:"+name);}@Overridepublic void setEmbeddedValueResolver(StringValueResolver resolver) {// TODO Auto-generated method stubString resolveStringValue = resolver.resolveStringValue("你好 ${os.name} 我是 #{20*18}");System.out.println("解析的字符串:"+resolveStringValue);}
}

自动装配——@Autowired 构造器,参数,方法,属性都是从容器中获取参数组件的值||自定义组件想要使用Spring容器底层的一些组件 ApplicationContext,BeanFactory相关推荐

  1. gin ajax 获取请求参数,go的gin框架从请求中获取参数的方法

    前言: go语言的gin框架go里面比较好的一个web框架, github的start数超过了18000.可见此框架的可信度 如何获取请求中的参数 假如有这么一个请求: POST   /post/te ...

  2. 自动装配——@Autowired@Qualifier@Primary

    * 自动装配; * Spring利用依赖注入(DI),完成对IOC容器中中各个组件的依赖关系赋值: * 1).@Autowired:自动注入: * 1).默认优先按照类型去容器中找对应的组件:appl ...

  3. c++ 获取当前时间_ThinkPHP6中获取参数的3种常用方法【总结】

    php中文网最新课程 每日17点准时技术干货分享 本文为php中文网认证作者:"王雪芹"投稿,欢迎加入php中文网有偿投稿计划! 在ThinkPHP6中获取参数有多种方法,也有很多 ...

  4. Java 8中获取参数名称

    本文转自廖雪峰老师的:<在Java 8中获取参数名称> 在Java 8之前的版本,代码编译为class文件后,方法参数的类型是固定的,但参数名称却丢失了,这和动态语言严重依赖参数名称形成了 ...

  5. Spring自动装配@Autowired的三种方式

    转自:https://ahaochan.github.io/Java/JavaWeb/Spring/Spring%E8%87%AA%E5%8A%A8%E8%A3%85%E9%85%8D@Autowir ...

  6. Aop 自动装配Autowired时,不装配接口而是实现类而报错 切面配置 satisfiedDependencyException|BeanNotOfRequiredTypeException

    在学到aop时,我本来打算测试环绕通知和异常通知的 这里我是在接口AccountService的实现类AccountServiceImpl里直接定义了一个方法findByName() 但我在测试类里用 ...

  7. c 语言 可变参数前要加形参,C/C++中可变参数的用法详细解析

    可变参数即表示参数个数可以变化,可多可少,也表示参数的类型也可以变化,可以是int,double还可以是char*,类,结构体等等.可变参数是实现printf(),sprintf()等函数的关键之处, ...

  8. java 获取运行时参数,Java8增强反射可以在运行时获取参数名

    技术公众号:Java In Mind(Java_In_Mind),欢迎关注! 原文:Java8增强反射可以在运行时获取参数名 介绍 在JDK增强意见:JPE 118:Access to Paramet ...

  9. python中的content方法_content最新:python计算Content-MD5并获取文件的Content-MD5值方式_爱安网 LoveAn.com...

    关于"content"的最新内容 聚合阅读 这篇文章主要介绍了python计算Content-MD5并获取文件的Content-MD5值方式,具有很好的参考价值,希望对大家有所帮助 ...

最新文章

  1. SQL的基本数据类型
  2. ON、WHERE、HAVING的区别
  3. php 常用字符串函数
  4. c++ 关于char *的类库函数
  5. 网络摄像头2 mjpg_streamer流程,编译
  6. 一起聊聊Microsoft.Extensions.DependencyInjection
  7. ubuntu12.04中安装SVN记录
  8. 一张图让你读懂鹅厂的物联网框架
  9. iPad协议 一键转发 群发消息 获取群二维码 清理僵尸粉V:viplac
  10. 表情商店竞争加剧,陌陌和微信的“另一桩”生意
  11. Python文本相似度识别(附图形化界面)
  12. mysql packet_mysql配置: max_allowed_packet
  13. checkbox如何默认选中
  14. 共享办公平台,提高整体使用率
  15. 仪表板展示|DataEase可视化数据分析工具中的视图钻取和联动设置
  16. 老毛桃制作winPE镜像
  17. 学术英语理工(第二版)Unit6课文翻译
  18. 医学影像工作站 v2.2 官方
  19. Makefile 指南
  20. 阿里云OSS文件上传,后台签名方案

热门文章

  1. CentOS SVN安装与配置 (RHEL5.4平台测试通过)
  2. Android Gradle 学习笔记(四):Gradle 构建脚本
  3. 织梦CMS调用指定顶级栏目名称的方法
  4. C#中volatile的用法
  5. [BZOJ4994] [Usaco2017 Feb]Why Did the Cow Cross the Road III(树状数组)
  6. Ganglia监控安装配置
  7. 第八章 熟练dom的几个常用方法
  8. git diff命令输出的含义
  9. 一种通过U盘热插拔的升级方法
  10. WINCE下如何设置/删除/查询这些环境变量