spring初涉--七大模块

spring简介


spring是个开源框架,是为了解决企业应用的复杂性而创建的,它从实际开发中抽取出来,因此他完成了大量开发中的通用步骤,留给开发者的仅仅是与特定应用相关的部分,从而大大的提高企业应用的开发效率
框架的主要优势是其分层架构,允许我们自由的使用中的模块。
Spring为企业的开发提供了一个轻量级的解决方案,包括:基于依赖注入的核心机制,基于AOP的声明式事务管理,与多种持久层技术整合以及优秀的Web MVC框架


总结起来spring有如下优点


1>低侵入式设计,代码的污染率小
2>独立于各种应用服务器,真正实现一次编译到处运行,移植性非常好
3>spring的IoC容器降低了业务对象替换的复杂性,提高了组件之间的解耦
4>spring的AOP支持将一些通用任务如安全,事务,日志等几种处理,提高了的代码的复用性
5>spring的ORM和DAO提供了与第三方框架的良好整合,并简化了底层数据库的访问
6>spring的高度开放性,并不要求应用完全依赖于spring,开发者可以自由选择spring框架的比分或全部


Spring的七大主要功能模块:CORE(基于DI),AOP,ORM,DAO, MVC,WEB, Context


spring初涉--七大模块_第1张图片



CORE:
Spring的核心层,即Spring容器,它代表了Spring的核心机制,是使用Spring框架时必须用到的,,主要提供spring IOC容器支持。在这个模块中会找到BeanFactory这个类,它是最基本的spring 容器和DI所依赖的基础


AOP:
面向切面编程,通过配置管理特性,spring AOP直接将面向切面的编程集中到了框架中,所以可以很容易使spring管理的对象支持AOP.Spring AOP模块为基于Spring的应用程序中的对象提供了事务管理服务,可以不用依赖于EJB组件就将声明式事务管理集中到应用中。还支持一些其他的通用事务,如日志,安全等。


ORM:
Spring的ORM模块提供了对常用ORM框架,如Hibernate,ibaties,jdao的辅助和支持,他本身更并不实现ORM,仅仅对常见的ORM框架进行封装并对其进行管理。


DAO:
通常编写数据库代码时总要写一些样板是的内容,如获取连接,创建语句,释放连接等 ,Dao模块将这些模板抽象出来,使得数据库代码变得简单明了,也可以避免因为释放数据库资源失败而导致的问题。这个模块还建立了易于理解的数据库异常层,他建立在各种数据库错误信息之上,以后就不用再去解释那些隐晦的SQL专有错误信息了。


MVC:
WEB MVC模块为spring提供了一套轻量级的mvc实现,他还可以支持和管理其他的mvc框架,如struts。相对于struts,spring自己的mvc框架更加简介和方便。


WEB:
提供了基本的面向web的集成功能,例如多个文件的上传功能和使用servlet监听器和面向web应用程序的上下文来初始化IOC容器,还实现了springMVC,提供了服务器与客户端的两种通信方式



Context:
应用上下文模块,建立在核心容器之上。如果说核心模块中的BeanFactory是使得spring成为容器的原因,那么context就是使spring成为框架的原因。在这个模块扩展了BeanFactory,添加了对国际化,应用生命周期时间以及验证的支持。另外,这个模块提供了很多企业级服务,如电子邮件服务,JNDI访问,EJB集成以及定时服务,并且支持与模板框架(Velocity,FreeMarker)的集成


你可能感兴趣的:(spring初涉--七大模块)