zoukankan      html  css  js  c++  java
  • Struts学习笔记一

    根据《Java高手真经》整理的学习笔记

    Struts是一种基于MVC(Model,View,Controller)模式的软件框架。

    一、Struts体系结构

    Struts是一种开源代码的应用框架,也就是把Servlet,JSP,JavaBean,自定义标签和信息资源整合到一个统一的框架中,为Web开发提供可配置型的MVC开发模式。



    具体过程为:

    • 当用户提出Request请求,被ActionServlet接受,依据struts-config.xml的配置文件来决定将用户的请求发给具体哪个Action对象。在struts-config.xml中每个action映射信息都通过一个action元素配置,这些配置信息在系统启动的时候被读入内存,每个action元素都对应一个actionMapping实例
    • Model模型通过Action更新系统的状态,调用业务逻辑
    • View主要由Jsp建立,并且struts自己本省有自定义标签库可以用来创建用户界面

    二、关于Struts的核心组件和相关配置文件

    ActionServlet:核心组件,接受用户请求和状态改变,发出视图的选择——Controller

    ActionMapping:状态改变事件

    Action:用于模型交互、执行状态改变或状态查询告诉ActionServlet下一个选择的视图

    ActionForward:用户指向或视图的选择

    ActionForm:状态改变的数据

    ApplicationResources.properties:存储本地化信息和标签

    struts-config.xml:包含用户请求路径和Action映射关系的配置信息

    struts-html.tld:创建struts输入表达的tag和html相关的tag

    struts-bean.tld:访问bean和bean属性时使用的tag

    struts-logic.tld:生成输出文本和其他一些控制信息

    struts-tiles.tld:进行站点也没布局

    struts-nested.tld:增强struts标签嵌套使用的能力

    三、Struts请求处理流程

    1. 检索和用户请求相匹配的ActionMapping实例,如果不存在,就返回用户请求路径无效。
    2. 如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中。
    3. 根据配置信息决定是否需要表单验证,如果需要验证,就调用ActionForm的Validate()方法
    4. 如果ActionForm的Validate()方法返回null或返回一个ActionErrors对象,就表示表单验证成功
    5. ActionServlet根据ActionMapping实例包含的映射信息决定将请求转发给哪个Action,如果不存在,就先创建这个实例,然后调用Action的execute()方法
    6. Action的execute()方法返回一个ActionForward对象,ActionServlet再把客户请求转发给ActionForward对象指向的JSP组件
    7. ActionForward对象指向的JSP组件生产动态网页,返回给客户。
  • 相关阅读:
    XML相关知识点
    MLPlatform开发日志
    1.0 es6 箭头函数
    基本数学概念
    4.4 thymeleaf使用补充
    vim操作手册
    eclise创建后台项目
    正则表达式
    数据库隔离级别
    1. gradle的使用教程
  • 原文地址:https://www.cnblogs.com/doublesong/p/2601688.html
Copyright © 2011-2022 走看看