发表于: 2017-03-12 17:59:27
2 1384
今天完成的事:
对Spring的认识:
一. spring的关键在于它的AOP和IOC,所以首先要弄懂AOP和IOC的原理,深入理解了这两方面才算是入门了。
1.IoC(Inversion of control): 控制反转 (将以前我们在代码中new的工作交给了spring容器)
概念:控制权由对象本身转向容器;由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
核心:bean工厂;在Spring中,bean工厂创建的各个实例称作bean动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射
2.AOP(Aspect-Oriented Programming): 面向方面编程
2.1 代理的两种方式:
静态代理:针对每个具体类分别编写代理类;针对一个接口编写一个代理类;
动态代理:针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类
2.2 AOP的主要原理:动态代理
这个就是面向切面编程,可以为某一类对象 进行监督和控制(也就是在调用这类对象的具体方法的前后去调用你指定的 模块)从而达到对一个模块扩充的功能。这些都是通过配置类达到的。
Spring目的:就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明管理的(Spring根据这些配置 内部通过反射去动态的组装对象)
要记住:Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。Spring里用的最经典的一个设计模式就是:模板方法模式。
Spring里的配置是很多的,很难都记住,但是Spring里的精华也无非就是以上的两点,把以上两点跟理解了也就基本上掌握了Spring.
Springframework下载链接:http://maven.springframework.org/release/org/springframework/spring/
明天计划的事情:
编写单元测试代码,查看日志,并转成Debug模式,练习调试,学会查看单步执行时的变量值。
遇到的问题:
在安装配置Spring时,一直没有成功,还在摸索中,今天的计划也没有完成,太拖节奏
收获:
基本了解了spring的关键AOP和IOC的原理,还需努力!!
评论