`
zpball
  • 浏览: 909924 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Struts工作机制?为什么要使用Struts?

阅读更多
工作机制:
Struts的工作流程:
在web应用启动时就会加载初始化ActionServlet,ActionServlet从
struts-config.xml文件中读取配置信息,把它们存放到各种配置对象
当ActionServlet接收到一个客户请求时,将执行如下流程.
-(1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息;
-(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;
-(3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法;
-(4)如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象, 就表示表单验证成功;
-(5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的 Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;
-(6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给 ActionForward对象指向的JSP组件;
-(7)ActionForward对象指向JSP组件生成动态网页,返回给客户;

为什么要用:
JSP、Servlet、JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。但用这些技术构建的系统非常的繁乱,所以在此之上,我们需要一个规则、一个把这些技术组织起来的规则,这就是框架,Struts便应运而生。

基于Struts开发的应用由3类组件构成:控制器组件、模型组件、视图组件

8. Struts的validate框架是如何验证的?
在struts配置文件中配置具体的错误提示,再在FormBean中的validate()方法具体调用。

9. 说下Struts的设计模式
MVC模式: web应用程序启动时就会加载并初始化ActionServler。用户提交表单时,一个配置好的ActionForm对象被创建,并被填入表单相应的数据,ActionServler根据Struts-config.xml文件配置好的设置决定是否需要表单验证,如果需要就调用ActionForm的 Validate()验证后选择将请求发送到哪个Action,如果Action不存在,ActionServlet会先创建这个对象,然后调用 Action的execute()方法。Execute()从ActionForm对象中获取数据,完成业务逻辑,返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指定的jsp组件,ActionForward对象指定的jsp生成动态的网页,返回给客户。
分享到:
评论

相关推荐

    Struts2工作机制

    Struts2的工作机制主要包括以下几个关键部分: 1. **过滤器Dispatcher**: Struts2的核心是`FilterDispatcher`,它是一个Servlet过滤器。当用户发起HTTP请求时,`FilterDispatcher`首先会被调用。这个过滤器负责...

    java高级ssh三大框架面试题总结

    为什么要使用 Struts?** Struts遵循MVC模式,其工作流程涉及ActionServlet、ActionMapping、ActionForm、Action和ActionForward等组件。使用Struts可以规范应用结构,减少重复代码,提高可维护性和开发效率。 8. ...

    Struts2的工作机制及分析

    在处理请求的过程中,Struts2使用了拦截器(Interceptor)机制,拦截器是Struts2的一大特色,它们允许开发者插入自定义的行为,如权限检查、日志记录等。Struts2内置了一些常用的拦截器,如ValidationInterceptor...

    struts2运行机制

    ### Struts2运行机制详解 #### 一、Struts2框架概述 ...通过深入理解这一机制,开发者不仅能够更好地掌握Struts2框架的使用,还能在此基础上进行定制和优化,从而构建出更高效、更稳定、更安全的Web应用程序。

    Struts2的工作机制原理分析及实例整理.pdf

    ### Struts2的工作机制原理分析及实例整理 #### 一、概述 Struts2作为一款流行的Java Web开发框架,其设计理念和技术实现相比Struts1.x有着显著的不同。尽管两者名称相似,但从架构到实现方式,Struts2都有了质的...

    最新Struts和Hibernate和Spring经典面试题

    2. 为什么要使用 Struts? Struts 的优点是提供了一个基于 MVC 模式的框架,能够简化 Web 应用程序的开发,提高开发效率和代码重用率。 Spring 1. Spring 工作机制? Spring 的工作机制包括 IoC 容器、AOP 代理...

    struts1和struts2的区别

    ### Struts1与Struts2的主要区别 #### 概述 Apache Struts 是一个用于构建企业级Java Web应用的开源框架。它分为两个版本:Struts1 和 Struts2。虽然两者都基于模型-视图-控制器(MVC)设计模式,但它们之间存在...

    Struts2初步使用总结

    **1.1 为什么要用Struts2** 在探讨为何使用Struts2之前,我们先简要回顾一下Struts2的一些基本特点: - **模块化设计**:Struts2采用模块化的架构设计,使得各个组件易于替换和扩展。 - **支持多种视图技术**:...

    struts2和struts1 API及使用指南 chm

    3. **结果映射**:Struts1使用ActionMapping来映射结果,而Struts2则使用Result接口和结果类型配置。 4. **表单验证**:Struts1的表单验证在Action中进行,而Struts2可以通过注解或XML配置文件进行字段级别的验证。...

    Struts1和Struts2区别

    Struts1和Struts2是两个非常著名的...然而,这并不意味着Struts1没有它的价值,对于一些简单项目或已有大量Struts1代码的项目,继续使用Struts1可能是更经济的选择。开发者应根据项目需求和团队技能选择合适的框架。

    struts1运行原理

    很不错的struts运行原理深刻解说,初学者很受用

    struts2.0整合Struts 1

    Struts 2整合Struts 1,允许开发者利用Struts 1已有的投资,同时享受Struts 2带来的优势,如增强的类型安全和更强大的拦截器机制。 在《Struts 2权威指南--基于WebWork核心的MVC开发》这本书中,作者李纲深入浅出地...

    struts错误处理机制小例子

    在这个“struts错误处理机制小例子”中,我们将探讨Struts如何优雅地处理应用程序中的异常和错误,确保用户界面的友好性和系统的稳定性。 在Struts框架中,错误处理主要依赖于两个关键组件:ActionForm和Struts配置...

    struts2的令牌机制

    Struts2的令牌机制是其防止重复提交和CSRF(跨站请求...总的来说,Struts2的令牌机制是Web应用程序安全策略的重要组成部分,通过合理的配置和使用,可以有效地防止重复提交和CSRF攻击,确保用户交互的完整性和安全性。

    struts练习struts练习

    练习这部分可能包括使用Struts Action和ActionForm来处理用户输入,使用Session和Cookies管理用户状态,以及实现安全验证机制。 4. **struts_login**: 这个文件名表明包含的是登录功能的实现。在Struts中,登录功能...

    struts2讲义 struts2讲义struts2讲义struts2讲义struts2讲义

    - 在web.xml中配置过滤器(Filter),通常使用`FilterDispatcher`作为入口点,它是Struts2的核心组件之一。 - 这个过滤器会捕获所有进入Web应用的HTTP请求,并将它们传递给Struts2框架处理。 - 配置过程中需要注意...

    struts2小程序 struts2代码

    Struts2是一个强大的Java web应用程序框架,用于...通过分析源代码,可以深入理解Struts2的工作原理、配置机制以及MVC模式在实际项目中的应用。对于初学者,这是一个很好的实践平台,能帮助他们掌握Web开发的基本技能。

Global site tag (gtag.js) - Google Analytics