Struts 2 基础知识总结

Struts框架入门指南(中文版) 本文还有配套的精品资源,点击获取 简介:Struts是一个开源的Java Web框架,遵循MVC设计模式,由Apache基金会维护。它通过简化复杂业务逻辑的处理和提高开发效率,支持开发者构建企业级Web应用程序。本指南详细介绍了Struts框架的核心概念、工作原理、关键组件、优势以及替代框架,帮助初学者快速入门并掌握Struts的应用。 1. Struts框架概述... 阅读详情

1.Struts 2实现MVC的方式

在这里插入图片描述

2.Struts 2 的使用

1.首先导入Struts 2 的核心jar包,配置web.xml文件

<filter>
    <filter-name>Struts2</fileter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>Struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

2.配置struts.xml

<struts>
    <!--
        package:包,用于对Action进行封装
        name:包名,根元素下可以有多个包,彼此不能重名
        extends:继承,用于指定继承的包,相当于将继承包下的配置信息复制到当前包
        namespace:命名空间,用于规定Action的访问路径,必须“/”开头    -->
    <package name="test01" namespace="/test01" extends="struts-default">
        <!--action:业务控制器,用于注册业务控制器组件
            name:action名称,用于规定Action的访问路径
            class:业务控制器组件,用于指定业务控制器对应的类
            method:方法,用于指定访问当前action时要调用的方法
            *请求URL:http://ip:port/projectName/namespace/ActionName.action
        -->
        <action name="hello" class="test01.konrad.action.HelloAction" method="execute">
            <!--result:输出组件,用于转发、重定向、直接输出
                name:名称,一个action下可以有多个result,彼此不能重名
                默认值转发,元素内设置转发的页面
            -->
            <result name="success">
                /hello.jsp
            </result>
        </action>
    </package>
</struts>

3.Result类型

1.dispatcher(默认方法):用于转发的result,可以将请求转发给JSP,这种类型的Result对应的类为ServletDispacherResult,通过default="true"指定该Result为Struts2默认的Result类型。

<result name="success" type="dispatcher">
    <param name="inputName">/index.jsp</param>
</result>

2.redirectAction:用于将请求重定向给另外一个Action,对应类为ServletActionRedirectResult

<result name="login" type="redirectAction">
    <!--若重定向的Action与当前Action在同一个namespace下,可以省略namespace-->
    <param name="namespace">
    /命名空间
    </param>
    <param name="actionName">
    action名
    </param>
</result>

3.redirect:用于将请求重定向给另一个页面,可以方式用户重复提交数据

<result name="login" type="redirect">
    <param name="new">/newPage.jsp</param>
</result>

4.获取Session的方式

获取Session的方式

1.ActionContext

  • ActionContext.getContext().getSesion(),返回Map<String, Object>

2.ServletActionContext

  • ServletActionContext.getRequest().getSession(),返回HttpSession

3.SessionAware(推荐使用)

  • 让Action实现SessionAware接口
  • 实现setSession(Map<String, Object> session)方法,Struts2会在实例化Action后调用方法,通过方法参数将Session对象注入进来
  • 定义成员变量,接收注入进来的Session对象
struts2基本知识 详细介绍了struts2处理多个请求和域传参 立即下载

相关推荐

惯性导航原理(九)-INS的初始对准-初始姿态确定+双矢量定姿

文章目录INS的初始对准INS初始化静基座/静态粗对准静态粗对准—加速度计调平原理加速度计调平静态粗对准—陀螺罗盘思考初始对准的影响因素双矢量定姿原理静态解析粗对准—双矢量定姿静态解析粗对准(续)其它初始对准方法精对准动对准 INS的初始对准 INS的初始对准为初始化的一部分 INS初始化 初始位置: 给定(INS没有初始位置确定的能力,例如从GPS ) 初始速度: 零(静止状态)或给定 初始姿态: 初始对准(INS有能力自己测资态) 粗对准vs. 精对准 静止状态vs. 运动状态 重要性: 失之毫厘,谬

十八与她的博客 1万+

Struts基础知识

上图是model2的流程。在model2架构中,Servlet作为前端控制器,负责接收客户端发送的请求,在Servlet中只包含控制逻辑和简单地前端处理;然后调用后端JavaBean来完成实际的逻辑处理,最后转发到相应的JSP页面处理现实逻辑。Struts2应用开发步骤: 1、在web.xml文件中定义核心filter来拦截用户请求。 2、如果用post提交请求,则定义包含表单数据的jsp页面。

小武思密达的专栏 501

新手必看:如何用T265和ROS实现无人机室内精准定位(附PX4参数配置)

本文详细介绍了如何使用Intel Realsense T265和ROS实现无人机室内精准定位,包括硬件准备、ROS数据流架构设计、PX4参数配置及系统验证。特别针对视觉SLAM技术在室内环境中的应用,提供了从零搭建到进阶优化的全流程解析,适合无人机开发新手快速上手。

weixin_30642561的博客 404

Struts2 入门学习总结一

一、Struts2简介 Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2是Struts的下一代产品,这个框架充分发挥了Struts1和WebWork这两种技术的优势,抛弃原来Struts1的缺点,使得Web开发更加容易。 struts2还有以下...

vel970912的博客 1万+

从稀疏表示到低秩表示(一)

确定研究方向后一直在狂补理论,最近看了一些文章,有了些想法,顺便也总结了representation系列的文章,由于我刚接触,可能会有些不足,愿大家共同指正。 从稀疏表示到低秩表示系列文章包括如下内容: 一、 sparse representation 二、 一、 sparse representation 1  sparsity  一个线性表示解决的问题如下图所示:

彼岸花 3万+

【OpenCV实战】简洁易懂的车牌号识别Python+OpenCV实现“超详解”(含代码)

简洁易懂的车牌号识别Python实现(含代码)1、整体思路2、代码详解 1、整体思路 2、代码详解

qq_40784418的博客 9万+

Struts2学习笔记--基础知识

struts2框架Struts2是一个实现了mvc设计思想的框架。contoller是由servlet充当的。struts2解决了servlet里面的冗余代码,让我们的编码更加的简单。apatche基金会的一个开源项目。什么是struts2?Struts2是遵循mvc设计模式的框架,MVC是所有面向对象程序语言都应该遵守的规范,MVC思想将一个应用分成三个基本部分:Model(模型)、View(视...

yangzhen925的博客 420

基于Simulink的无线充电系统LCC补偿网络建模与控制

本文详细介绍了基于Simulink的无线充电系统LCC补偿网络建模与控制方法。首先分析了LCC补偿网络的恒流输出、软开关实现和抗偏移能力等优势,并对比了不同补偿拓扑特性。随后分步骤讲解了Simulink建模流程,包括LCC主电路构建、关键参数设计、双闭环控制系统实现等核心环节。重点阐述了移相控制策略和软开关验证方法,提供了系统效率计算和抗偏移测试的调试技巧。最后展示了仿真结果,在耦合系数变化20%时,闭环系统仍能保持输出电压稳定在±2%波动范围内。文章还探讨了工程扩展方向,并针对常见问题给出了解决方案,为无

xiaoheshang_123的博客 539

Struts2基础知识整理

Struts2是基于MVC设计模式的WEB框架,这个框架的的核心就是J2EE的过滤器Filter,通过Filter把所有请求转交给Struts2来处理 要使用Struts首先我们先要导入JAR包,同样的,我把完整的Struts分享给大家:                    链接:https://pan.baidu.com/s/1rQQAlusPkggK4SODJz2tNA 密码:6fi3 ...

weixin_42668719的博客 410

【零基础入门unity游戏开发——unity通用篇14】unity特性相关的知识(基于unity6开发介绍)

unity特性相关的知识(基于unity6开发介绍)

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1203

【深度学习新浪潮】为什么OpenClaw这么吃token?

OpenClaw 高 Token 消耗的核心是 Agent 多轮思考、工具调用上下文累积,以及平台内置的模板/多模型协同开销;PD 分离在 OpenClaw 中可针对性解决长上下文 Prefill 阻塞、KV Cache 复用低效问题,是提升其推理效率的核心优化手段,主要落地在长上下文处理与生成阶段解耦、KV Cache 集中管理、动态资源调度三个方向。

专注:太空算力、AI infra、异构调度、大模型成本工程 419

struts 2——基础知识

struts 2——基础知识目录说明struts2 核心拦截器struts2 基本配置在struts.xml中配置常量action的实现拦截器的实现访问action的三种方式1)在配置文件指定action标签的method属性2)用感叹号的方式3)在配置文件中使用通配符的方式获取请求页面数据的三种方式1)在action类中定义与表单项一一对应的属性2)在action类中定义 表单项一一对应属性的实...

qq_37051166的博客 544

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Struts2入门1 Struts2基础知识

Struts2入门1 Struts2基础知识 20131130 代码下载:链接: http://pan.baidu.com/s/11mYG1 密码: aua5 前言: 之前学习了Spring和Hibernate框架知识,因为Spring可以将Struts和Hibernate框架集成,所以还是要学习一些Struts框架技术。本章主要是Struts的简单介绍。 1.Stru...

weixin_33872660的博客 161

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Struts2基础知识

Struts2基础知识Struts2是java web开发中最经典的MVP框架技术。 Stuts2MVC: MVC将一个应用的输入、处理和输出流程按照模型、视图和控制器进行了分离,这样一个应用就可以分成三层:模型层、视图层和控制器层。传统的MVC模型如下图: Stuts2工作原理: Suruts2的工作原理可以用下面这张图来描述,下面我们分步骤介绍一下每一步的核心内容

cancer_LIU的博客 315

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Struts2基础知识总结

1.值栈(Value Stack)可以理解为存放数据的一块内存空间,存放了Action的属性,OGNL可以直接访问; 2.Stack Context也可以理解为存放数据的一块内存空间,存放了request相关属性以及参数,OGNL可以通过#访问Stack Context的值; 3.值栈(Value Stack)发挥作用的范围和request发挥作用的范围是一致的; 4.struts2数据标签: &...

NCUT-LB 716

struts2基础知识整理

1.解决用户直接访问jsp的问题:     将jsp页面放入WEB-INF下,应为WEB-INF目录中的内容不能直接访问。只能通过转发获得。 2.javabean中的属性和成员变量。    属性对应于javabean中getter/setter中的去掉get和set的单词的首字母小写的形式。成员变量是javabean中声明的私有变量。通常属性和成员变量同名。 3.EL表达式解析为java代

junsure2012 1084

Struts2 基础知识

JAVA web开发历史 早期的Java Web应用中,Jsp文件同时负责生产网页,控制到下一个网页的流程,以及负责业务逻辑, 这给web开发带来一系列问题: HTML和Java耦合在一起,JSP文件的编写者必须是网页设计者,又是Java开发者。 缺点: 可读性差 调试困难 不利于维护,更改业务逻辑或者数据可能设计多个相关网页 现在通常分为四层: 表述层(JSP,HTM...

woi123的专栏 335

【Struts2基础知识】

Struts2工作原理图: -->FilterDispatcher过滤器在2.1.3以后被StrutsPrepareAndExecuteFilter所替代,使得在执行Action之前可以添加过滤器了; 核心文件: web.xml 任何MVC框架都需要与Web应用整合,这就需要借助于web.xml文件,只有配置在web.xml文件中Servlet才会被

bear_huangzhen的专栏 1039

JAVA - 【Struts2】基础知识

目录 Struts2特点 Struts2关键类库 1> Struts2特点 Action的实现: POJO:Plain Old Java Objects 线程安全: Action是一个请求对应一个实例(新new一个对象),没有线程安全方面的问题 Servlet依赖: Action不再依赖于Servlet API,有利于测试 封装请求参数: 可以选择使用POJO类来封装请求的参数,或者直接使用Action的属性 表达式语言方面.

⚡ 461

struts2基础知识(一)

Struts2 Struts2是在WebWork2基础发展而来的。和struts1一样, Struts2也属于MVC框架。不过有一点大家需要注意的是:尽管Struts2和struts1在名字上的差别不是很大,但Struts2和struts1在代码编写风格上几乎是不一样的。那么既然有了struts1,为何还要推出struts2。主要是因为struts2有以下优点: 1 > 在软件设计上Strut

chuyuqing的专栏 1809
上一篇: JSP上传图片,不重启服务器
下一篇: IDEA: Error:(x,x) java编码 GBK的不可映射字符 错误的解决
少年不再NianShao
博客等级 码龄8年 8粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值