美文网首页
Spring 的框架

Spring 的框架

作者: watermountain | 来源:发表于2019-04-01 20:59 被阅读0次

    Spring 框架图

    Spring 框架图

    IoC

    1. 定义了IoC容器的最基本接口(BeanFactory),并提供了一系列这个接口的实现。例如XmlBeanFactory,XmlBeanFactory能够支持通过XML文件配置的Bean定义信息。

    2. IoC容器还提供了一个容器系列,如Simple-JndiBeanFactory、StaticListableBeanFactory等。

    3. 支持包括Resource访问资源的抽象和定位等

    4. IoC容器的高级形态ApplicationContext应用上下文供用户使用,这些ApplicationContext应用上下文,如FileSystemXmlApplicationContext、ClassPathXmlAppli-cationContext,对应用来说,是IoC容器中更面向框架的使用方式。

    5. 实现国际化的消息源和应用支持事件特性

    备注(IoC基本容器和应用上下文是核心)

    AOP

        AOP实现了一个完整的建立AOP代理对象,实现AOP拦截器,直至实现各种Advice通知的过程。AOP的主要功能是增强

        实现集成了AspectJ,同时还在JVM 动态代理/CGLIB的基础上实现了一个AOP 框架。

    TransactionProxyFactoryBean声明式事务处理就是通过AOP 集成到Spring中的。

    MVC 

        MVC就是这样一个模块,这个模块以DispatcherServlet为核心,实现了MVC模式,包括怎样与Web容器环境的集成,Web请求的拦截、分发、处理和ModelAndView数据的返回,以及如何集成各种UI视图展现和数据表现,如PDF、Excel等,通过这个模块,可以完成Web的前端设计。

    JDBC/ORM

    Spring对JDBC做了一层封装,使通过JDBC完成的对数据库的操作更加简洁。Spring JDBC包提供了JdbcTemplate作为模板类,封装了基本的数据库操作方法,如数据的查询、更新等;另外,SpringJDBC还提供了RDBMS的操作对象,这些操作对象可以使应用以更面向对象的方法来使用JDBC,比如可以使用MappingSql-Query将数据库数据记录直接映射到对象集合,类似一个极为简单的ORM工具。除了通过Spring JDBC对数据库进行操作外,Spring还提供了许多对ORM工具的封装,这些封装包括了常用的ORM工具,如Hibernate、iBatis等,这一层封装的作用是让应用更方便地使用这些ORM工具,而不是替代这些ORM工具,比如可以把对这些工具的使用和Spring提供的声明式事务处理结合起来。同时,Spring还提供了许多模板对象,如HibernateTemaplate这样的工具来实现对Hibernate的驱动,这些模板对象往往包装使用Hibernate的一些通用过程,比如Session的获取和关闭、事务处理的关联等,从而把一些通用的特性实现抽象到Spring中来,更充分地体现了Spring的平台作用。

    TX

    Spring事务处理是一个通过Spring AOP实现自身功能增强的典型模块。在这个模块中,Spring把在企业应用开发中事务处理的主要过程抽象出来,并且简洁地通过AOP的切面增强实现了声明式事务处理的功能。这个声明式事务处理的实现,使应用只需要在IoC容器中对事务属性进行配置即可完成,同时,这些事务处理的基本过程和具体的事务处理器实现是无关的,也就是说,应用可以选择不同的具体的事务处理机制,如JTA、JDBC、Hiber-nate等。因为使用了声明式事务处理,这些具体的事务处理机制被纳入Spring事务处理的统一框架中完成,并完成与具体业务代码的解耦。在这个模块中,可以看到一个通用的实现声明式事务处理的基本过程,比如怎样配置事务处理的拦截器,怎样读入事务配置属性,并结合这些事务配置属性对事务对象进行处理,包括事务的创建、挂起、提交、回滚等基本过程,还可以看到具体的事务处理器(如Data-SourceTransactionManager、HibernateTransactionMan-ager、JtaTransactionManager等)是怎样封装不同的事务处理机制(JDBC、Hibernate、JTA等)的。

    远程调用

    通过Spring的封装,为应用屏蔽了各种通信和调用细节的实现,同时,通过这一层的封装,使应用可以通过选择各种不同的远端调用来实现,比如可以使用HTTP调用器(以HTTP协议为基础的),可以使用第三方的二进制通信实现Hessian/Burlap,甚至还封装了传统Java技术中的RMI调用

    相关文章

      网友评论

          本文标题:Spring 的框架

          本文链接:https://www.haomeiwen.com/subject/hanweqtx.html