• 【Struts 1】Struts1的基本原理和简介


    备注:这里介绍的是Struts1的内容,Struts2的内容,会在后续的博客的予以说明!

    一、什么是Struts

    struts的目标是提供一个开发web应用的开源框架,Struts鼓励基于Model2模式来开发程序。关于model2的说明:【drp 10】JSP页面中model1和model2的区别

    Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。Struts 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及 Jakarta Commons 的一些类库。Struts由一组相互协作的类(组件)、Servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型。


    二、Struts框架结构


    browser:
    web容器将对来自HTTP的每个请求创建一个request对象,并用一个response对象作出响应
    controller:
    控制器接收来自浏览器的请求,在struts中,是由一个servlet来充当控制器的角色,struts-config.xml文件配置控制器
    model:
    在struts中,由Action类充当业务逻辑的包装器,ActionForm是程序的状态
    view:
    JSP文件


    三、Struts1框架组件



    1,ActionServlet类控制导航流
    2,ActionServlet根据URI来决定哪个Action类 被用于处理请求,Action可以校验输入,并访 问业务层以便从数据库检索信息
    3,Action需要知道页面提交了哪些内容,所以 由ActionServlet根据请求URI来决定将请求 参数绑定到哪个ActionForm中,并传入Action。Action在完成业务逻辑后,返回一个ActionForward 对象,ActionServlet根据ActionForward对象中的路径来调用页面完成响应
    4,Struts将这些信息绑定在一个ActionMapping对象中,一个ActionMapping对应一个请求URI,当请求路径到达的时候,ActionServlet就会查询ActionMapping对象,ActionMapping对象将告诉ActionServlet哪个Action类会被调用、哪个ActionForm类被用于传递页面数据以及哪些ActionForward将被用于转向
    5,有关Action、ActionForm、ActionForward等信息,Struts通过一个配置文件:struts-config.xml文件来定义。


    四、总结

    感觉上来说,Struts1不应该是被淘汰掉的一个框架,它是MVC的的一个极佳实现。如果说Struts1被淘汰掉了,那是不是.NET这边的MVC也是要被淘汰掉的。Struts1可以解决的问题,就没有必要用Struts2或者别的框架。所以,个人认为还是一个适合不适合的问题!

  • 相关阅读:
    LVM逻辑卷管理器
    Linux LVM硬盘管理及LVM扩容
    Windows10 笔记本的电池坏了几秒钟就自动关机或休眠
    Cmder 下载地址和配置
    Linux 按 tab 补全忽略大小写
    Layui 官网下线, Layui文档镜像备份
    【markdown】markdown教程(1)
    【Ceph | OSD】删除OSD和Host的正确方法
    OSD
    【Leetocode | 001】146. LRU 缓存机制
  • 原文地址:https://www.cnblogs.com/hhx626/p/6010326.html
Copyright © 2020-2023  润新知