(1)spring

来源:互联网 发布:软件模块间接口 编辑:程序博客网 时间:2024/06/05 17:00

今天打算认真的看一遍spring,以前也看,但是总是看不进去,这次决定系统的看下,就看张开涛的,一步一步的,坚持看完,以前总决定开涛的spring太老了,但是也没有其他人写的啊,再不看越来越老。


有什么不懂的

  1. 抽象工厂、工厂方法设计模式、生成器模式、代理设计模式、包装器设计模式
  2. spring是怎么解耦合的,也需要在类里面创建对象啊,比如service层调用dao层,也是有dao层对象的啊
    1. service里面的属性是dao层的接口,而且也没有实例化,ioc容器给实例化了,实例化的是接口的实现类,这个实现类是可以随意改变的,因为它没直接写在service层的代码里,所以,跟接口还是耦合的,但是跟具体的实现类不耦合,所以说降低耦合,我感觉,实际上还是java面向对象,继承多态起的作用。
  3. 数据库事物

为什么选择spring

  1. 轻量级,非侵入式,依赖东西少,资源占用少,部署简单。

学习内容

  1. ioc
  2. aop

ioc

  1. IoC,控制反转。ioc容器创建对象,查找及注入依赖对象。
    1. 我的理解:
      1. 类的对象已经创建好了,等着我们去调用。web开发里面,直接 类名 对象名,声明一下就行了,不用写new了,这种依赖注入,我觉得就是对象已经实例化了,因为控制反转,所以不用我们手动实例化了。
      2. 我觉得能够依赖注入的都是些没有属性的类,或者类中属性所在的类是没有属性的,或者说 没有可变的属性,比如,service层有dao层的属性,dao层基本没有属性,service和dao都是依赖注入的对象。
  2. DI,依赖注入
    1. 我的理解
      1. 一个类中引用其它类,就直接当作属性就行了,这个属性不用手动的实例化,ioc容器会给实例化。ioc给实例化的过程我觉得就是依赖注入。
  3. IoC容器
    1. Spring中,BeanFactory是IoC容器的实际代表者。
    2. IoC如何知道哪些是它管理的对象,通过配置文件,一般是xml配置文件,还有注解,基于java文件、基于属性文件
    3. 疑问
      1. Spring与配置文件完全解耦?
  4. Bean,由IoC实例化的对象。
  5. ssss
  6. ssss

【没有看】

  1. 对象图导航
  2. 循环依赖
  3. 方法注入
原创粉丝点击