架构师审美观1——spring初体验(一)

一、spring简化开发四个基本策略

1、基于POJO的轻量级和最小侵入性编程;

2、通过依赖注入和面向接口松耦合;

3、基于切莫和惯性进行声明式编程;

4、通过切面和模板减少样板式代码。

二、spring中的编程思想

1、OOP(面向对象编程):封装、继承、多态;

2、BOP(面向Bean编程):一切从Bean开始;

3、AOP(面向切面编程):解耦,专人做专事;

4、IOC(控制反转):转交控制权;

5、DI/DL(依赖注入或依赖查找):自动赋值。

三、spring系统架构之核心模块

1、spring-core:依赖注入IOC与DI的最基本实现;

2、spring-beans:Bean工厂与Bean的装配;

3、spring-context:定义基础的spring的context上下文即IOC容器;

4、spring-context-support:对spring IOC容器的扩展支持,以及IOC子容器;

5、spring-context-indexer:spring的类管理组件和classpath扫描;

6、spring-expression:spring表达式语言。

四、spring系统架构之切面编程模块

1、spring-aop:面向切面编程的应用模块,整合Asm,CGLib、JDKProxy;

2、spring-aspects:集成AspectJ,AOP应用框架;

3、spring-instrument:动态Class Loading模块。

五、spring之数据访问与集成模块

1、spring-jdbc:spring提供的JDBC抽象框架的主要实现模块,用于简化spring jdbc操作;

2、spring-tx:spring jdbc事务控制实现模块;

3、spring-orm:主要集成Hibernate,Java Persistence API(JPA)和Java Data Objects(JDO);

4、spring-oxm:将Java对象映射成XML数据,或者将XML数据映射成Java对象;

5、spring-jms:Java Messaging Service能够发送和接收信息。

六、spring之Web模块

1、spring-web:提供了最基础Web支持,主要建立于核心容器之上,通过Servlet或者Listeners来初始化IOC容器;

2、spring-webmvc:实现了spring mvc的web应用;

3、spring-websocket:主要是与web前端的全双工通讯的协议;

4、spring-webflux:一个新的非堵塞函数式Reactive Web框架,可以用来建立异步的、非阻塞、事件驱动的服务。

七、spring之通信报文模块

1、spring-messaging:从spring4开始新加入的一个模块,主要职责是为spring框架集成一些基础的报文传送应用。

八、spring之集成测试模块

1、spring-test:主要为测试提供支持的。

九、spring之集成兼容模块

1、spring-framework-bom:Bill of Materials。解决spring的不同模块依赖版本不同问题。

你可能感兴趣的:(架构师审美观1——spring初体验(一))