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各个模块逐一分解,有兴趣的可以关注博客最新动态。该博文主要为笔者学习过程中记录下来的一些重点内容,请忽略具体的细节。当然,为了更加容易理解一些抽象概念,建议读者先具备一定的java开发功底,比如java基本语法,设计模式,UML,数据库等基础知识。
       当然,该文章的主要源于spring官方文档,建议读者直接查阅:Spring Framework

简介

       Spring Frame为现代企业应用程序提供了一个全面和可配置的编程模型,开发者可以根据需要快速选择需要的模块。使用spring来管理应用程序,可以将开发者从基础框架中解脱出来,专注于业务逻辑开发,极大提高开发效率。

模块

       spring由多个模块构成,其中core模块为核心模块,其他各个模块都依赖于core模块。在开发中,开发者可根据需要选择模块。spring模块组成图
    Spring Framework简介_第1张图片 
       由上图可以看出,spring主要由如下几个模块构成
  • Core container:IOC为核心层(spring-ioc)
  • Resource:资源(spring-resource)
  • Aop:面向切面编程(Spring AOP)
  • Data Access:数据库访问层(见后期分解)
  • Web:spring mvc层(见后期分解)
  • Test:spring测试框架(见后期分解)

使用场景

       下图为整个spring的使用场景
Spring Framework简介_第2张图片
       由图中可以看出,spring各个模块都清晰地展示出来了使用场景。作为spring使用者,我们只需要借助于spring就可以将大量的基础框架交给spring来管理,开发者只需要专注于业务逻辑即可,极大降低了开发的复杂度。比如通过声明式事务来配置事务,让有关于事务的模板代码全部丢给spring管理;使用IOC来管理依赖注入;使用spring mvc来作为mvc框架等。但作为一个通用的框架,肯定不能绑定整个spring。这就是spring的厉害之处,可灵活的容纳其他第三方框架。下图为spring整合struts的框架图
Spring Framework简介_第3张图片

总结

       学习spring,不能一脑瓜子的直接copy他人的配置文件,否则会给各个配置文件搞得神魂颠倒,出了问题还一头雾水。通过阅读官方文档,对整个spring框架的主体有了个清晰的把握,开发起来更加得心应手。熟话说,打蛇打七寸,学习也是一个道理,得把握某个技术的设计原理与应用场景,有了整体的脉络,学习事半功倍。
       

你可能感兴趣的:(spring,spring)