`

MVC 框架与 Spring 整合的思考

    博客分类:
  • SSH2
阅读更多

    基于 B/S 架构的 JavaEE 应用中,用户向 MVC 框架的控制器请求,控制器拦截到用户请求后,调用业务处理用户请求。控制器应该如何获得业务逻辑组件?

    答案是采用工厂模式,或者服务定位模式,对于采用服务定位器模式,是远程访问的场景。在这种场景下,业务逻辑组件已经在某个容器中运行,并对外提供某种服务。控制器无须理会该业务逻辑的创建,直接调用该服务即可,但在调用之前,必须先找到该服务——这就是服务定位器的概念。经典 JavaEE 应用就是这种结构的应用。

    对于轻量级的 JavaEE 应用,工厂模式则是更实际的策略。因为在轻量级 JavaEE 应用中,业务逻辑是 EJB ,通常就是一个 POJO ,业务逻辑组件的生成通常应由工厂负责,而且工厂可以保证该组件的实例只需一个就够了,可以避免重复实例化造成的系统开销。

    采用工厂模式,将控制器与业务逻辑组件的实现分离,从而提供更好的解耦。在采用工厂模式的访问策略中,所有的业务逻辑组件的创建由工厂负责,业务逻辑组件的运行也由工厂负责。而控制器只需定位工厂实例即可。

    如果系统采用 Spring 框架,则 Spring 成为最大的工厂。Spring 负责业务逻辑组件的创建和生成,并可管理业务逻辑组件的生命周期。可以如此理解:Spring 是个性能非常优秀的工厂,可以生产出所有的实例,从业务逻辑组件,到持久层组件,甚至控制器组件。

    那么,控制器如何访问到 Spring 容器中的业务逻辑组件呢?为了让 Action 访问 Spring 的业务逻辑组件,有两种策略:

  • Spring 容器负责管理控制器 Action ,并利用依赖注入为控制器注入业务逻辑组件(这种方式可以充分利用 Spring 的 IoC 特性,但需要将配置 Struts2 的控制器即 Action 部署在 Spring 容器中,而 struts.xml 文件中还需要配置一个“伪 Action ”,因此导致配置文件冗余;并且Action 的业务逻辑组件接收容器的注入,将导致代码的可读性降低)。
  • 利用 Spring 的自动装配,Action 将会自动从 Spring 容器中获取所需的业务逻辑组件。
分享到:
评论

相关推荐

    Spring-MVC框架简单实现

    **Spring MVC 框架简单实现** Spring MVC 是 Spring 框架的一部分,它是一个用于构建 Web 应用程序的模型-视图-控制器(MVC)架构。在这个简易版框架中,我们将深入理解 Spring MVC 的核心概念和关键组件。 **1. ...

    spring MVC框架搭建

    Spring MVC 框架搭建与 Hibernate 整合实例 Spring MVC 框架搭建是 Java Web 开发中的一种常见架构模式,它基于 Model-View-Controller(MVC)模式,使用注解方式来处理请求和响应。下面将详细介绍 Spring MVC 框架...

    Java EE互联网轻量级框架整合开发 SSM框架(Spring MVC+Spring+MyBatis)和Redis实现.rar

    Java EE互联网轻量级框架整合开发,主要集中在SSM框架的使用上,即Spring MVC、Spring和MyBatis的集成,以及Redis缓存技术的引入。这个主题旨在提高Web应用的开发效率,优化性能,同时降低项目的复杂度。 首先,...

    spring+spring mvc+mybatis案例整合.docx

    Spring+Spring MVC+MyBatis 框架整合案例 Spring 框架是 Java 平台上的一种开源框架,由 Rod Johnson 和 Juergen Hoellerสอง位开发者创建,于 2004 年首次发布。Spring 框架的主要目标是简化企业级应用程序的...

    SSM框架的配置搭建 spring、 spring mvc、 mybatis 整合详解

    SSM框架,即Spring、Spring MVC和MyBatis的整合,是Java开发中常见的Web应用框架,用于构建高效、灵活的后端服务。本教程将详细介绍如何配置和搭建这一框架,帮助开发者理解其核心概念和操作流程。 首先,我们要...

    spring+spring mvc+mybatis框架整合实现超市货物管理系统

    总的来说,"spring+spring mvc+mybatis框架整合实现超市货物管理系统"是一个涵盖后端开发基础技能的项目,涉及了JavaEE的多个层面,从Web层的路由处理,到业务逻辑的实现,再到数据库操作,以及用户认证和分页显示等...

    ssm框架spring+mybatis+mvc

    在SSM框架中,MyBatis与Spring整合后,可以方便地管理SqlSession,实现事务控制。 3. Spring MVC框架: Spring MVC是Spring框架的一部分,专门用于构建Web应用的MVC架构。它负责接收HTTP请求,调度控制器,处理...

    spring mvc + spring + hibernate 全注解整合开发视频教程 11

    在本教程中,我们将深入探讨如何使用Spring MVC、Spring和Hibernate三大框架进行全注解的整合开发。这个视频教程系列的第11部分,重点可能是建立在前几部分的基础之上,进一步深化对这三个核心技术的理解和实践。 ...

    Spring mvc整合mybatis例子

    在IT行业中,Spring MVC 和 MyBatis 是两个非常重要的框架,它们分别负责Web应用程序的控制器层和数据访问层。Spring MVC 提供了模型-视图-控制器架构模式的实现,而MyBatis则是一个轻量级的SQL映射框架,用于简化...

    Spring MVC + Mybatis+Spring实现的个人博客系统

    这是一个基于Spring MVC、Mybatis和Spring框架实现的个人博客系统,涵盖了Web开发中的后端架构设计、数据库管理和前端展示等多个方面。以下将详细介绍这个系统的关键知识点: **1. Spring MVC** Spring MVC是Spring...

    Java EE 框架整合开发⼊⻔到实战——Spring+Spring MVC+MyBatis(微课版)课后习题答案.pdf

    这份文档名为《Java EE 框架整合开发入门到实战——Spring+Spring MVC+MyBatis(微课版)课后习题答案.pdf》,它显然是关于Java EE中流行的三个框架整合使用的教程。这三个框架分别是Spring、Spring MVC和MyBatis,...

    Spring框架整合Spring MVC与Hibernate实现

    Spring MVC 是 Spring 框架的一部分,专门用于构建 Web 应用程序。它遵循模型-视图-控制器(MVC)设计模式,帮助开发者将业务逻辑、用户界面和数据访问分离开来。Spring MVC 提供了诸如请求映射、视图解析、数据绑定...

    spring 与 spring mvc 整合 配置讨论

    6. **数据访问**:Spring整合了多种持久化框架,如Hibernate、MyBatis等,通过配置可以实现数据库操作的自动化管理。 7. **AOP**:利用Spring的AOP功能,可以实现事务管理、日志记录等功能。例如,使用`@...

    Spring MVC jar包

    Spring MVC 是一个基于Java的轻量级Web应用框架,它为开发者提供了模型-视图-控制器(MVC)架构,使开发人员能够更好地组织和分离应用程序的业务逻辑、数据处理和用户界面。Spring MVC是Spring框架的一个核心组件,...

    实验11 Spring MVC框架:SSM框架整合.docx

    Spring MVC 框架与 SSM 框架整合 本实验的目的是掌握 SSM 框架整合方法,并完成成绩管理系统的课程管理模块。本实验将基于 SSM 框架的系统设计方法,使用 Spring MVC 框架进行实现。 一、实验环境搭建 在进行实验...

    spring整合其他框架

    7. Spring与Struts2整合:Struts2是一个MVC框架,Spring与Struts2的结合可以强化MVC设计模式的实现,通过Spring的IoC(控制反转)和AOP,可以简化Struts2的配置,提升可维护性。 8. Spring与Hibernate整合:...

    Java EE 框架整合 开发入门到实战-Spring+Spring MVC+MyBatis微课版复习笔记

    此外,了解Spring框架整合MyBatis及Spring MVC的细节,对于开发基于Java EE的企业级应用非常关键。Spring MVC负责Web层的请求处理,MyBatis则是持久层框架,能够简化数据库操作。熟练掌握这些框架的整合使用,能够...

    spring+spring mvc+hibernate框架整合简单小例子

    在IT行业中,Spring、Spring MVC和Hibernate是三个非常重要的开源框架,它们分别在不同层面上为Java应用提供了强有力的支持。本篇文章将详细讲解这三个框架的基本概念、整合过程以及为何适合初学者。 首先,Spring...

    SSM框架的配置搭建 spring,spring mvc,mybatis 整合详解

    SSM框架,即Spring、Spring MVC和MyBatis的整合,是Java开发中常见的Web应用程序架构。这个框架组合提供了强大的模型-视图-控制器(MVC)架构支持,以及灵活的数据访问层解决方案。下面将详细介绍这三个组件的配置与...

    Spring mvc + Spring + Spring jdbc 整合实例源码

    在Spring MVC和Spring整合中,我们可以通过XML配置或Java配置来定义Bean及其依赖关系。例如,我们可以定义一个Service Bean,然后在Controller中通过@Autowired注解自动注入,实现业务逻辑的调用。 最后,Spring ...

Global site tag (gtag.js) - Google Analytics