`

springmvc与struts特点分析

 
阅读更多
1:
spring3 mvc开发效率高于struts
2:
spring3 mvc可以认为已经100%零配置
3:
struts2是类级别的拦截, 一个类对应一个request上下文,
springmvc是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应
所以说从架构本身上 spring3 mvc就容易实现restful url 
而struts2的架构实现起来要费劲
因为struts2 action的一个方法可以对应一个url
而其类属性却被所有方法共享,这也就无法用注解或其他方式标识其所属方法了 
4:
spring3mvc的方法之间基本上独立的,独享request response数据
请求数据通过参数获取,处理结果通过ModelMap交回给框架
方法之间不共享变量
而struts2搞的就比较乱,虽然方法之间也是独立的,但其所有Action变量是共享的
这不会影响程序运行,却给我们编码 读程序时带来麻烦 
5:
由于Struts2需要针对每个Request进行封装,把Request,Session等Servlet生命周期的变量封装成一个一个Map,供给每个Action使用,并保证线程安全。所以在原则上,是比较耗费内存的。
分享到:
评论

相关推荐

    springMVC使用文档

    #### SpringMVC 与 Struts2 的比较 - **入口机制**:SpringMVC 使用 Servlet 作为入口,而 Struts2 使用 Filter。 - **设计原则**:SpringMVC 基于方法设计,参数传递通过方法参数;Struts2 基于类设计,参数传递...

    韩顺平 Java工程师课程-SpringMVC-v2.pdf

    SpringMVC 登录流程分析 SpringMVC 的登录流程包括以下步骤: 1. 用户输入用户名和密码。 2. 客户端将用户名和密码发送到服务器。 3. 服务器端使用 SpringMVC 处理请求,验证用户名和密码。 4. 如果验证成功,...

    SpringMVC源码剖析(一)- 从抽象和接口说起1

    SpringMVC是一个广泛使用的Java Web表现层框架,它在Struts2之后逐渐崛起,成为许多开发者首选的解决方案。本文将从抽象和接口的角度探讨SpringMVC的核心设计与实现,帮助读者理解SpringMVC如何处理Web请求流程。 ...

    Java架构师面试题

    Java架构师面试题涵盖了许多关键领域,包括J2EE开发、大数据处理、日志管理、权限分配、服务扩展性、负载均衡、性能调优、系统整合、软件开发模型、云计算理解以及框架比较与安全性分析。以下是对这些知识点的详细...

    MVC框架程序设计课程标准.pdf

    8. **Hibernate的概念与作用**:讲解Hibernate的基本概念、特点及其开发流程,指导学生搭建hibernate环境,并实现注册信息的数据库存储。 9. **Spring的概念与作用**:介绍Spring框架的基本概念和作用,教授学生如何...

    并发编程面试题以及答案.docx

    并发编程面试题以及答案 本文档提供了一份并发编程面试题集,涵盖了数据结构与算法基础、Java 基础、JVM、多线程/并发、...* SpringMVC 或 Struts:处理请求的流程和实现。 * Spring AOP:解决问题、实现和应用场景。

    Java项目基于JavaEE的企业人事管理信息系统的设计与实现+代码+论文+答辩ppt

    框架选择:常用SSM(Spring+SpringMVC+MyBatis)或SSH(Spring+Struts+Hibernate)等主流框架,实现业务逻辑、Web展示与数据访问的分离,提升开发效率。 数据库:采用MySQL等关系型数据库,支持高效的数据存储、查询...

    SpringBoot学习笔记

    - **传统项目的问题**:在传统的Java Web开发中,如果使用SSH(Struts + Hibernate + Spring)或SSM(Spring + SpringMVC + MyBatis)框架组合时,开发者需要花费大量时间在配置文件上,如各种Bean的定义、属性的...

    spring mvc 快速入门深入分析

    ### Spring MVC 快速入门深入分析 #### 一、Spring MVC 概述 Spring MVC 是 Spring Framework 的一个重要模块,主要用于构建 Web 应用程序。它遵循 MVC(Model-View-Controller)设计模式,将应用程序的不同关注点...

    java开发工程师xx简历.docx

    1. 电子商务平台:参与了一个基于 Spring + SpringMVC + Mybatis + MySQL + zTree + PageHelper + EasyUI + CKeditor + Nginx + Redis 的电子商务平台的开发,负责了商品信息模块和商品管理模块的用户需求分析、文档...

    传智巴巴运动网源代码及文档

    1. **Java源码**:Java是这个项目的基础编程语言,它具有跨平台性、安全性强和面向对象的特点。源码分析可以帮助学习者理解类、对象、接口等概念,以及如何进行面向对象的设计和实现。 2. **EJB(Enterprise ...

    JavaEE技术问题汇总.docx

    【Struts2与SpringMVC对比】 Struts2是基于Action的MVC框架,配置相对繁琐。SpringMVC是Spring的一部分,依赖注入强大,配置简洁,性能较好。 【SpringMVC核心组件与运行流程】 核心组件包括DispatcherServlet、...

    java1000题基础百战程序员

    - 需求分析、概要设计与详细设计文档编写 #### 二、高级主题 - **内部类专题** - 内部类的分类:成员内部类、局部内部类等 - 内部类的访问权限 - **线程池专题** - 线程池的原理与优势 - Executor框架介绍 - ...

    科帮网javaWeb计算机配件报价系统项目源码(实用).zip

    首先,项目基于JavaWeb开发框架,这通常意味着它可能采用了Spring、SpringMVC或Struts等主流框架。这些框架的核心特点是模块化和面向切面编程(AOP),它们能够帮助开发者更好地组织代码,提高开发效率,并且有利于...

    物资管理系统项目源码.zip

    同时,SpringMVC或Struts等Web框架也可能被用于处理请求和响应。 6. **前端技术**: 项目可能采用了HTML、CSS和JavaScript进行页面布局和交互设计。可能还使用了jQuery、Bootstrap或Vue.js等前端框架,提升用户体验...

    社会公共体育馆管理系统设计与实现.pdf

    Spring Struts可能是指Spring的Struts支持,这是Spring框架对Struts 1和Struts 2框架的一种集成方式,能够使Spring的依赖注入等特性与Struts框架协同工作。 总体而言,社会公共体育馆管理系统的设计与实现是一个...

    java面试复习总结.doc.pdf

    Java面试复习总结主要涵盖了几大框架的特性与比较,包括Tapestry、Struts、SpringMVC、Spring、Hibernate和MyBatis。以下是对这些框架的详细解释: 1. **Tapestry**: - Tapestry是一个前端MVC框架,结合了模板...

    蚂蚁网上书城

    "蚂蚁网上书城"是一个基于Java技术栈的Web应用程序,主要使用了SSH(Spring、Struts、Hibernate)和SSM(Spring、SpringMVC、MyBatis)两大框架进行开发。这个项目展示了如何将这些技术有效地整合在一起,构建出一个...

    基于SSM美食街网站系统源码.zip

    7. **SSH**:SSH(Struts2 + Spring + Hibernate)是另一种常见的Java Web开发框架组合,这里的SSH可能指的是与SSM类似的概念,代表了旧一代的开发模式。Struts2负责MVC的实现,Hibernate是ORM框架,与MyBatis类似,...

Global site tag (gtag.js) - Google Analytics