栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring源码学习(day02)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring源码学习(day02)

@Resource是如何工作的
    @Resource和@Autowired注解类似, 用于依赖注入, @Resource是Java层面提供的, 而@Autowired是Spring提供的, 它们的底层实现逻辑也有不同@Resource有一个name属性, 当该属性不为空时, Spring会直接根据所指定的name去容器中寻找对应的bean对象, 如果没找到则抛异常如果name为空, 那么@Resource会先根据要注入的属性名去容器中查找对象, 如果存在则进行注入, 如果不存在则根据属性类型在容器中进行查找, 找到一个则进行注入
@Value是如何工作的
    @Value也是用于进行依赖注入的, 只不过@Value是用于从Properties等文件中获取属性值的, 并且@Value可以解析Spel@Value(“xxx”) 这种形式会将xxx直接赋值到属性里, 如果类型无法转换则会报错@Value("${xxx}") 这种形式会从文件中找到对应的属性进行赋值, 如果文件中不存在对应的属性那么会将该值解析为字符串进行赋值@Valule("#{xxx}") 这种形式会解析成Spring表达式, 从容器中寻找name为xxx的bean对象, 如果找到了则进行注入, 没找到则抛异常
FactoryBean是什么
    FactoryBean是Spring提供的灵活创建Bean的方式, 可以实现FactoryBean接口重写getObject()方法来创建bean对象FactoryBean接口有三个方法:
      getObject() 方法用于创建bean对象isSingleton() 方法用于表示该对象是否是单例getObjectType() 方法用于表示bean对象类型下图中, 实际创建了两个bean对象, 一个是类型为User, name为zhouyu的bean对象, 一个是name为&zhouyu的FactoryBean对象
    注意分清FactoryBean 和 BeanFactory,
      FactoryBean 是一个小型工厂, 它自己也是bean对象, 同时可以创建bean对象BeanFactory是容器, 可以生产出各种各样的bean对象
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/733092.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号