邯城往事

>>> 展颜笑夙愿,一笑泯恩仇 <<<

目录
Spring的30个关键类
/  

Spring的30个关键类

D:.
│  pom.xml    
└─src
    └─main
        ├─java
        │  └─com
        │      └─gupaoedu
        │          └─vip  
        │              └─spring
        │                  └─framework
        │                      ├─annotation
        │                      │      GPAutowired.java
        │                      │      GPController.java
        │                      │      GPRequestMapping.java
        │                      │      GPRequestParam.java
        │                      │      GPService.java
        │                      │      
        │                      ├─aop
        │                      │  │  GPAopProxy.java #Aop顶层接口
        │                      │  │  GPCglibAopPorxy.java #CglibAop实现类
        │                      │  │  GPDefaultAopProxyFactory.java #策略选择Cglib还是Jdk
        │                      │  │  GPJdkDynamicAopProxy.java #JdkAop实现类
        │                      │  │  
        │                      │  ├─aspect
        │                      │  │      GPAbstractAspectJAdvice.java #切面通知的抽象父类
        │                      │  │      GPAdvice.java #通知接口
        │                      │  │      GPAfterReturningAdviceInterceptor.java #后切面通知拦截器
        │                      │  │      GPAspectJAfterThrowingAdvice.java #异常通知拦截器
        │                      │  │      GPJoinPoint.java #本次操作的方法的元信息接口
        │                      │  │      GPMethodBeforeAdviceInterceptor.java #前切面通知拦截器
        │                      │  │      
        │                      │  ├─config
        │                      │  │      GPAopConfig.java #切面信息类,根据切点用于判断需不需要代理bean
        │                      │  │      
        │                      │  ├─intercept
        │                      │  │      GPMethodInterceptor.java #切面拦截器接口
        │                      │  │      GPMethodInvocation.java #包含拦截器链,负责按顺序执行所有的切面
        │                      │  │      
        │                      │  └─support
        │                      │          GPAdvisedSupport.java #解析AOP配置的工具类
        │                      │          
        │                      ├─beans
        │                      │  │  GPBeanWrapper.java #封装Bean对象,此处的bean是代理后的bean
        │                      │  │  
        │                      │  ├─config
        │                      │  │      GPBeanDefinition.java #bean的一些原生信息,包含beanName和bean的原生类名,和是否懒加载等属性
        │                      │  │      
        │                      │  └─support
        │                      │          GPBeanDefinitionReader.java #保存用户配置好的配置文件,扫描指定包名下的类
        │                      │          GPDefaultListableBeanFactory.java #注册bean,放入ioc容器
        │                      │          
        │                      ├─context
        │                      │      GPApplicationContext.java #加载配置文件,ioc,di,getBean
        │                      │      
        │                      ├─core
        │                      │      GPBeanFactory.java #工厂接口
        │                      │      
        │                      └─webmvc
        │                          └─servlet
        │                                  GPDispatcherServlet.java #容器初始化,doGet,doPost
        │                                  GPHandlerAdapter.java #将request中的形参反射到要执行的方法中的形参中
        │                                  GPHandlerMapping.java #把url和Method做一个映射
        │                                  GPModelAndView.java #页面和数据
        │                                  GPView.java #通过正则将特殊格式的字符替换为model中的对应名字的变量值,再渲染进response
        │                                  GPViewResolver.java #解析对应的模板,比如自动将controller中的返回值后缀加上.html,并且找到对应的html文件
 

评论
取消