zoukankan      html  css  js  c++  java
  • Struts工作机制

    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类组件构成:控制器组件、模型组件、视图组件

    Struts的validate框架是如何验证的?

    在struts配置文件中配置具体的错误提示,再在FormBean中的validate()方法具体调用。

    说下Struts的设计模式MVC模式:

    web应用程序启动时就会加载并初始化ActionServler。用户提交表单时,一个配置好的ActionForm对象被创建,并被填入表单相应的数据,ActionServler根据Struts-config.xml文件配置好的设置决定是否需要表单验证,如果需要就调用ActionForm的Validate()验证后选择将请求发送到哪个Action,如果Action不存在,ActionServlet会先创建这个对象,然后调用Action的execute()方法。Execute()从ActionForm对象中获取数据,完成业务逻辑,返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指定的jsp组件,ActionForward对象指定的jsp生成动态的网页,返回给客户。单例模式Factory(工厂模式):定义一个基类===》实现基类方法(子类通过不同的方法)===》定义一个工厂类(生成子类实例)===》开发人员调用基类方法Proxy(代理模式)

     

  • 相关阅读:
    数据要求说明书
    详细设计说明书
    《机器学习》西瓜书 课后习题参考答案
    机器学习基础 基本术语
    (转)android UI进阶之仿iphone的tab效果
    (转)android UI进阶之弹窗的使用
    (转) Android UI学习 Tab的学习和使用
    (转) android UI进阶之布局的优化(二)
    名言警句
    php的IP转换成整型函数ip2long()出现负数
  • 原文地址:https://www.cnblogs.com/jgig11/p/4150478.html
Copyright © 2011-2022 走看看