Spring理解

        传统的编程是面向对象编程,对象的创建以及对象之间的依赖关系Jar包管理都是硬编码在程 序中,对象是由自己控制,IOC就是把对象的创建以及管理交给了spring,IOC可以使用xml方式 以及注解的方式进行实现,Spring在创建一个容器的时候,会把bean对象分为两类进行存放 一种是通过类型一种是通过名称,其具体实现方法就是DI依赖注入依赖是指bean对象创建依赖于 容器,注入呢则是值对象所依赖的资源由容器来进行设置和装配

依赖注入的方式呢主要分为三种

第一种就是通过构造器进行注入

第二种就是通过set方法进行注入

第三种则是通过p标签进行注入

在spring中被ioc所管理的对象就称之为bean,bean对象就是IOC容器初始化,装配及管理的对象 bean的生命周期

主要是分为四部

第一步是实例化对象

第二步是注入属性

第三步是初始化对象

第四步是销毁

首先是beandefinition然后进行实例化调用InstantiationAwareBeanPostProcessor方法 返回PostProcessBeforeInstantiation对象实例化完成后在调用InstantiationAwareBeanPostProcessor 实例化完成后返回PostProcessAfterInstantiation进行属性赋值然后调用BeanPostProcessor 返回postProcessbeforeInitialization进行初始化操作 初始化完成后有BeanPostProcessor返回postProcessAfterInitialization 返回以后初始化也顺利完成,随着容器的关闭bean对象也随之销毁.

        AOP就是面向切面编程,AOP可以对业务逻辑各个部分进行隔离,使得业务逻辑各部分之间的耦合度降低 提高程序的可重用性,提高开发效率 AOP是基于代理模式设计,动态代理的好处就是可以时我们业务更加纯粹不再去关注一些公共的事情 公共的部分交由代理来完成使得我们业务分工更明确,一个动态代理一般代理一个业务,但是一个动态代理可以代理多个类 ,其使用的是动态代理他又分为两种代理方式一种是JDK的动态代理,一种是CGLIB的动态代理 jdk的动态代理是基于接口的具体的接口是proxy cglib的动态代理是基于类实现的具体类名为invocationHandler AOP提供五种通知模式 分别是前置,后置,环绕,异常,和最终 AOP可以对日志,事务,安全等进行增强,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值