Spring

  1. IOC(Inversion of Controller)
    1. 使用对象时,由主动new对象 转换为由外部提供对象,此过程对象创建控制权由程序转移到外部,此思想称为控制反转
    2. Spring对IOC思想的实现
      1. Spring提供了一个IOC容器,用来充当IOC思想中的'外部'
      2. IOC容器负责对象的创建,初始化等一系列工作,被创建或被管理的对象在IOC中统称为Bean
    3. DI 依赖注入
      1. 在容器中建立bean与bean 之间的依赖关系,称为依赖注入
  2. Bean的基础配置
    1. Bean的作用范围
      1. Singleton 单例(默认)
      2. Prototype 非单例
    2. Bean的实例化
      1. 构造方法(需要提供一个可访问的构造方法)
      2. 静态工厂
      3. 实例工厂
  3. Bean的生命周期(从创建到消亡的过程)
    1. (1)根据配置情况调用Bean构造方法或工厂方法实例化Bean。

      (2)利用依赖注入来完成Bean中所有属性值的配置注入。

      (3)如果Bean实现了BeanNameAware接口,则Spring调用Bean的setBeanName()方法传入当前Bean的id值。

      (4)如果Bean实现了BeanFactoryAware接口,则Spring调用setBeanFactory()方法传入当前工厂实例的引用。

      (5)如果Bean实现了ApplicationContextAware接口,则Spring调用setApplicationContext()方法传入当前ApplicationContext实例的引用。

      (6)如果BeanPostProcessor和Bean关联,则Spring将调用该接口的预初始化方法postProcessBeforeInitialzation()对Bean进行加工操作,这个非常重要,Spring的AOP就是用它实现的。

      (7)如果Bean实现了InitializingBean接口,则Spring将调用afterPropertiesSet()方法。

      (8)如果在配置文件中通过init-method属性指定了初始化方法,则调用该初始化方法。

      (9)如果有BeanPsostProcessor和Bean关联,则Spring将调用该接口的初始化方法postProcessAfterInitialization()。此时,Bean已经可以被应用系统使用了。

      (10)如果在 中指定了该Bean的作用范围为 scope="singleton",则将该Bean 放入Spring IoC的缓存池中,将触发Spring对该Bean的生命周期管理;如果在中指定了该Bean的作用范围为scope="prototype",则将该Bean交给调用者,调用者管理该Bean的生命周期,Spring不再管理该Bean。

      (11)如果Bean实现了DisposableBean接口,则Spring会调用destory()方法将Spring中的Bean销毁;如果在配置文件中通过destory-method属性指定了Bean的销毁方法,则Spring将调用该方法进行销毁

  4.         AOP 面向切面编程
    1. 作用:在不惊动原始设计的基础上为其进行功能增强
    2. 连接点(JoinPoint):程序执行过程中的任意位置,粒度为执行方法,抛出异常,设置变量等
    3. 切入点(Pointcut):匹配连接点的式子
      1. 在SpringAop中,一个切入点可以只描述一个具体的方法,也可以匹配多个方法
    4. 通知(Advice):在切入点处执行的操作,也就是共性功能
      1. 在SpringAop中,功能最终以方法的形式呈现
    5. 通知类:定义通知的类
    6. 切面(Aspect):描述通知与切入点的关系

        

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值