zoukankan      html  css  js  c++  java
  • sping注解原理

    持续更新中。。

    spring注解用的是java注解,用到的是java反射机制。

    参考文档如下:

    http://zxf-noimp.iteye.com/blog/1071765

    对应spring源码如下:

    调用顺序是由下到上

    void org.springframework.beans.factory.annotation.InjectionMetadata.InjectedElement.inject(Object target, String requestingBeanName, PropertyValues pvs) throws Throwable

    void org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.processInjection(Object bean) throws BeansException

    void org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.AutowiredFieldElement.inject(Object bean, String beanName, PropertyValues pvs) throws Throwable

    org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.AutowiredMethodElement.inject(Object bean, String beanName, PropertyValues pvs) throws Throwable

    目前的两个问题

    1、java是如何获取字段和方法上面的注解?

    2、Autowired是如何获取接口对应的实现类?之前是在配置文件中定义接口和其实现类的对应关系,现在没有配置文件了,是如何获取的呢?

    第2个问题操作的地方是在

    org.springframework.beans.factory.support.DefaultListableBeanFactory.registerSingleton(String beanName, Object singletonObject) throws IllegalStateException

    获取被注解的bean=》注册bean中被注解的字段()

  • 相关阅读:
    bzoj 2763: [JLOI2011]飞行路线
    bzoj 2761: [JLOI2011]不重复数字
    bzoj 2744: [HEOI2012]朋友圈
    bzoj 2743: [HEOI2012]采花
    bzoj 2730: [HNOI2012]矿场搭建
    bzoj 2705: [SDOI2012]Longge的问题
    抗DDOS攻击
    kali安装后配置
    Kali更新源,亲测目前可用的源
    kali安装及配置ssr客户端
  • 原文地址:https://www.cnblogs.com/usual2013blog/p/3780329.html
Copyright © 2011-2022 走看看