spring|spring实战第三版自学---第一章
资源:http://download.csdn.net/detail/bokmark/9418941
第一章
spring的实质其实是依赖注入(DI)和面向切面编程(AOP);
spring的根本使命:简化java开发;
如何简化java开发:
- 基于pojo的轻量级和最小侵入性编程
pojo:Plain Old Java Object
spring竭力避免因为自身的API而弄乱你的代码
避免强行让你继承一些父类或者实现一些接口来把你的代码弄乱
- 通过依赖注入和面向接口实现松耦合
依赖注入:==> http://blessht.iteye.com/blog/1162131
1.构造器注入
2.set方法
3.静态工厂的方法注入
4.实例工厂的方法注入
如果一个对象只通过接口来实现依赖关系,那么就可以在这个对象毫不知情的情况下,使用不同的具体实现来进行替换
- 【spring|spring实战第三版自学---第一章】基于切面和惯例进行声明式编程
面向切面被定义为应用程序分离关注点的技术。
切面的定义:自我理解,将应用的各个组件组成一个切面,而这个切面被定义了必须做点什么事情发生在了什么时候
声明式编程:
- 通过切面和模板减少样板式代码
- 实例化
- 填充属性
- 调用BeanNameAware的setBeanName
- 调用BeanFactoryAware的setBeanFactory
- 调用ApplicationContextAware的setApplicationContext
- 调用BeanPostProcessore的初始化方法 postProcessBeforeInitialization
- 调用InitalizingBean的afterPropertiesSet方法(包括Init——method)
- 调用定制的初始化方法
- 调用BeanPostProcessore的后初始化方法 postProcessAfterInitialization
- Bean加载完成 可以使用
- 调用DisposableBean的Destroy方法
- 调用定制的销毁方法
推荐阅读
- 2018-02-06第三天|2018-02-06第三天 不能再了,反思到位就差改变
- 第三节|第三节 快乐和幸福(12)
- android第三方框架(五)ButterKnife
- Activiti(一)SpringBoot2集成Activiti6
- SpringBoot调用公共模块的自定义注解失效的解决
- 解决SpringBoot引用别的模块无法注入的问题
- thinkphp|thinkphp 3.2 如何调用第三方类库
- 和陈先生第三次在一起
- 我的世界同人小说《暮色齿轮》第三回|我的世界同人小说《暮色齿轮》第三回 回忆
- 亲子日记第三百四十二篇|亲子日记第三百四十二篇 暴雨