,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。Spring框架的功能可以用在任何J2EE服务器中,大多数功能也适用于不受管理的环境。Spring的核心要点是:支持不绑定到特定J2EE服务的可重用业务和数据访问对象。这样的对象可以在不同J2EE环境(Web或EJB)、独立应用程序、测试环境之间重用。组成Spring框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下:l核心容器:核心容器提供Spring框架的基本功能。核心容器的主要组件是BeanFactory,它是工厂模式的实现。BeanFactory使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。lSpring上下文:Spring上下文是一个配置文件,向Spring框架提供上下文信息。Spring上下文包括企业服务,例如JNDI、EJB、电子邮件、国际化、校验和调度功能。lSpringAOP:通过配置管理特性,SpringAOP模块直接将面向方面的编程功能集成到了Spring框架中。所以,可以很容易地使Spring框架管理的任何对象支持AOP。SpringAOP模块为基于Spring的应用程序中的对象提供了事务管理服务。通过使用SpringAOP,不用依赖EJB组件,就可以将声明性事务管理集成到应用程序中。lSpringDAO:JDBCDAO抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。SpringDAO的面向JDBC的异常遵从通用的DAO异常层次结构。lSpringORM:Spring框架插入了若干个ORM框架,从而提供了ORM的对象关系工具,其中包括JDO、Hibernate和iBatisSQLMap。所有这些都遵从Spring的通用事务和DAO异常层次结构。。essObjects(DAO),同时还提供一个利用这个框架开发的JPetStore实例。a!n2VA'p0IBATIS:最大的优点是可以有效的控制sql发送的数目,提高数据层的执行效率!它需要程序员自己去写sql语句,不象hibernate那样是完全面向对象的,自动化的,ibatis是半自动化的,通过表和对象的映射以及手工书写的sql语句,能够实现比hibernate等更高的查询效率。Ibatis只是封装了数据访问层,替我们做了部分的对象关系映射。但代价是必须要写xml配置文件,相对于Hibernate还要写很多sql。Hibernate通过工具直接从数据库模式生成实体类和基本的配置文件,而且大部分情况下不需要我们写sql,会较大的提升开发效率。但这些也有很多的局限性,尤其是对环境的要求较高(数据库设计,对象设计,团队的协作等)。个人感觉Ibatis对项目比较有意义的地方在于它小巧灵活,可扩展,封装了数据访问层(事务,缓存,异常,日志),并提供了DAO框架支持。利用Ibatis我们可以做到代码和sql的分离,只要sql
各系统架构图 来自淘豆网www.taodocs.com转载请标明出处.