Spring 的一些思考

遵循带着目的去看源码学习的规则,研究源码前先提出问题:

1 bean 注入方式   按照指定id注入  按照class的type注入  

问题  如id重复   在同一个xml文件中会报错   在多个xml文件中在后面加载的bean 同一个id会覆盖之前加载的bean

2 配置bean 为什么需要class属性? 反射加载bean 是不是需要类的全限定名,也就是坐标?

3 property set注入  constructor-arg 构造器注入的源码实现

4 所有的bean交给Spring管理, Spring是如何管理bean的生命周期的?

5 Spring  对bean 创建和销毁前后的方法增强   (代理模式: 控制对象行为,装饰着模式: 包装对象,增强对象功能)

6 Spring 如何处理bean之间的依赖关系,循环引用的解决处理

7 子容器,父容器,子容器可访问父容器的资源但父容器不能访问子容器的资源。事物等配置在父容器中可全局使用

ClassPathXmlApplicationContext 会找 projectName/src/main/resources 下的路径开始  ApplicationContext.xml

FileSystemXmlApplicationContext  会从  projectName下的路径开始   /src/main/resources/ApplicationContext.xml

 

Spring 作为基础框架需要有以下特点:

1 好用

2 适用

3 容易扩展

4 容错

5 方便升级维护

 

实现方法: 1 配置文件 2 接口 (模板方法模式: 提供接口可抽象类实现基础方法,其他实现交给子类实现)

 

对Interface的理解:

1 接口是对某一类行为的高度抽象,说明了要做什么,没说如何去做。

2 接口间是隔离的(每个接口承担了某一类的独立完成功能)

3 定义一个接口集成多个接口 可以聚合多个接口的功能于一个接口。提供更强大便于使用的功能

4 如何看源码:

    1 看顶层接口功能

    2 看组合接口功能

    3 看具体实现

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值