微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

学习SSM框架

 

SSM框架

Spring + Spring MVC + MyBatis 的结合

Spring:

  Spring 是一个轻量级 Java 开发框架,是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题,也就是降低耦合度,即降低业务逻辑层和其他层/模块间的联系。

Spring体系结构:

Spring框架至今以及集成了20多个模块,这些模块分布在核心容器、数据访问/集成层、Web层、AOP(面向切面编程)模块、植入模块、消息传输和测试模块中。

 Spring体系结构图:

                                         

   对于以上模块我挨个说明一下相关概念:

    核心容器:Spring的核心容器是其他模块建立的基础,由Spring-core、spring-beans、Spring-context、Spring-context-support、spring-expression等模块组成。

      ·Spring-core模块: 提供框架的基本组成成分,包括控制反转(IoC)和依赖注入(DI)功能

      ·spring-beans模块:  提供beanfactory,是工厂模式的一个经典实现,Spring将管理对象称为Bean。

      ·Spring-context模块: 建立在Core和Beans模块的基础之上,提供一个框架式的对象访问方式,是访问定义和配置的任何对象的媒介。ApplicationContext接口是Context模块的焦点。

      ·Spring-context-support:  支持整合第三方库到Spring应用程序上下文,特别是用于高速缓存和任务调度的支持

      ·spring-expression:  提供了强大的表达式语言去支持运行时查询和操作对象图

   控制反转 IoC :是一种思想,意思是将手动创建的对象的任务交由 Spring 框架去做,我们只需要从 Spring 容器中获取需要的对象,不需要理会它的创建过程。也就是说,将创建对象的控制权反转给了 Spring 框架。

  依赖注入:是一种消除类之间依赖关系的设计模式,实现松耦合。如业务层实现业务需要依赖于数据访问层,使用依赖注入则无需再业务层创建数据访问层的类,也就是将这种依赖关系配置在spring配置文件中,由spring容器根据配置信息创建、管理Bean对象。 

       

      ·AOP和Instrumentation

        Spring-aop模块:提供了一个符合AOP要求的面向切面编程实现,允许定义方法拦截器和切入点,将代码按照功能进行分离,以便干净解耦。

        Spring-aspects模块:提供了与AspectJ的集成功能,AspectJ是一个功能强大且成熟的AOP框架,这玩意儿以后再去了解。

        Spring-instrument模块:提供了类植入支持和类加载器的实现,可以在特定的应用服务器中使用。

       AOP(面向切面编程):将核心业务功能与周边功能分开

      ·消息

        消息模块:提供对消息传递体系结构和协议的支持

      ·数据访问/集成

        Spring-jdbc模块:提供了一个JDBC的抽象层,消除了繁琐的JDBC编码和数据库厂商特有的错误代码解析

        spring-orm模块:先放一放

        Spring-oxm模块:先放一放

        Spring-jms模块:先放一放

        Spring-tx模块:支持用于实现特殊接口和所有POJO类的编程和声明式事务管理。

 

      ·Web

        Spring-web模块:提供了基本的 Web 开发集成功能

        Spring-webmvc模块:用于 Web 应用程序的 Spring MVC 的实现

        还有一些模块先放一放

      ·测试

        Spring-test模块:支持使用 JUnit 和 TestNG 对 Spring 组件进行单元测试和集成测试

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐