Spring Framework简单介绍
Spring Framework
学习java编程不知不觉已经三年时间了,開始的时候,总是喜欢看着视频,然后按部就班的敲打着键盘,每当系统正常执行后。心里乐开了花。最開始的时候,所有的代码都是由自己设计。基本上不使用第三方java类。
可是随着学习的深入,逐渐的開始接触各种第三方java类库,比方apache common。dom4j,log4j等。相同的,为了减少系统开发的复杂度,大部分系统也会採用业界经典的框架结构来构建。比方:struts + spring + orm(ssh),spring mvc + spring + orm(s2sh)。
在java中,Spring Framework(下面简称为spring)框架使用很广。特别是在java ee开发的系统中。经常使用的ssh,s2sh都离不开spring。
这篇文章为spring framework简单介绍,后期会对spring各个模块逐一分解,有兴趣的能够关注博客最新动态。该博文主要为笔者学习过程中记录下来的一些重点内容。请忽略详细的细节。当然。为了更加easy理解一些抽象概念,建议读者先具备一定的java开发功底,比方java基本的语法,设计模式。UML,数据库等基础知识。
当然,该文章的主要源于spring官方文档,建议读者直接查阅:Spring Framework
简单介绍
Spring Frame为现代企业应用程序提供了一个全面和可配置的编程模型。开发人员能够依据须要高速选择须要的模块。使用spring来管理应用程序。能够将开发人员从基础框架中解脱出来。专注于业务逻辑开发。极大提高开发效率。
模块
spring由多个模块构成,当中core模块为核心模块,其它各个模块都依赖于core模块。在开发中。开发人员可依据须要选择模块。
spring模块组成图
由上图能够看出,spring主要由例如以下几个模块构成
- Core container:IOC为核心层(spring-ioc)
- Resource:资源(spring-resource)
- Aop:面向切面编程(Spring AOP)
- Data Access:数据库訪问层(见后期分解)
- Web:spring mvc层(见后期分解)
- Test:spring測试框架(见后期分解)
使用场景
下图为整个spring的使用场景
由图中能够看出,spring各个模块都清晰地展示出来了使用场景。作为spring使用者,我们仅仅须要借助于spring就能够将大量的基础框架交给spring来管理,开发人员仅仅须要专注于业务逻辑就可以,极大减少了开发的复杂度。比方通过声明式事务来配置事务,让有关于事务的模板代码所有丢给spring管理;使用IOC来管理依赖注入;使用spring
mvc来作为mvc框架等。但作为一个通用的框架。肯定不能绑定整个spring。这就是spring的厉害之处,可灵活的容纳其它第三方框架。下图为spring整合struts的框架图
总结
学习spring。不能一脑瓜子的直接copy他人的配置文件。否则会给各个配置文件搞得神魂颠倒,出了问题还一头雾水。通过阅读官方文档,对整个spring框架的主体有了个清晰的把握,开发起来更加得心应手。熟话说,打蛇打七寸。学习也是一个道理。得把握某个技术的设计原理与应用场景。有了总体的脉络。学习事半功倍。