Struts2笔记一之简单了解Struts2

J2EE系列之Struts2学习笔记(一)--Struts2安装与配置 之前跟着教学视频学习过Struts2,但是用到的时候总是忘记,需要回过头了看教学视频,这样既费时效果还不好。现在我准备写成博客的形式,既对自己加深印象,又能够帮助到需要的朋友。开始正题! 一、Struts基本情况介绍 简介:这里百度之,百度百科上面介绍的非常清楚了。 Struts2在用户请求、模块化处理以及页面展示方面具有非常好的效果。 二、下载 1.Struts2的主页为:http:/ 阅读详情

Struts2笔记一之简单了解Struts2

1、Struts2所需要的jar为:

commons-fileupload-1.2.1.jar、 commons-io-1.3.2.jar、 commons-logging-1.0.4.jar、 freemarker-2.3.13.jar、

ognl-2.6.11.jar、 struts2-core-2.1.6.jar、 xwork-2.1.2.jar、


2、Struts2在web.xml中的加载方式如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
		<init-param>  
			<param-name>config</param-name>  
			<!-- 这里的config/struts.xml就是修改后的路径,默认struts2.X配置文件默认存放路径在
				/WEB-INF/classes目录下,就是struts.xml放在src的目录下。 -->
			<param-value>struts-default.xml,struts-plugin.xml,config/struts.xml</param-value> 
		</init-param> 
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>
Struts2是通过filter来加载的。


3、一个简单的struts.xml配置:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
	<!-- 开启开发模式,该文件一修改就会自动重新部署 -->
    <constant name="struts.devMode" value="true" />
	<!-- 导入另外的struts配置文件 -->
    <include file="example.xml"/>
	<!-- extends="struts-default" 是必须的,这是struts自带的一个package,所有自定义的package都需要继承它 -->
    <package name="packageName" namespace="/example" extends="struts-default">
        <action name="HelloWorld" class="com.edifier.HelloWorldAction" method="execute">
            <result name="success">/hello.jsp</result>
        </action>
    </package>	
</struts>

4、 Struts运行机制:

   1) 访问请求localhost:8081/Struts2_0100_Introduction/HelloWorld;
   2) 它会通过http协议发送给tomcat,之后tomcat会去查看访问的是哪一个application;
   3) 这个请求的application是Struts2_0100_Introduction,tamcat会找到相应的application然后读取这个application的web.xml配置文件;
   4) web.xml里面配置了一个filter,而这个filter过滤方式为/*,过滤所有的url地址,然后上述请求就会被StrutsPrepareAndExecuteFilter过滤器进行过滤;
   5) 过滤开始会读取struts.xml配置文件,struts会先查看请求对应的namespace,这里是"/",查看以后会去struts.xml中查找相对应的namespace"/";
   6) 当查到对应的namespace以后,会再去查找对应的action,这里的action是HelloWorld;
   7) 当找到对应的action后,struts就会去执行这个包中定义的拦截器,因为所有的包都继承了struts-default这个,所以都会经过struts2自带的一系列的拦截器进行拦截,如果有自定           义拦截器,也会执行自定义拦截器;
   8) 在所有拦截器走完一遍以后,struts会找到对应的Action类,执行对应的方法,这里的类是:HelloWorldAction,方法是:execute();
   9) 在方法执行完毕以后,会有一个返回值(一些特殊的情况下没有返回值,如:ajax),这个返回值为String类型,在struts.xml中的action中与之对应的有一个跳转url可能是action,可能        是jsp,这就是这个action执行后下一步操作;
  10) 在跳转之前,struts还会经历一遍之前走的所有的拦截器,不过这一次的顺序与之前的顺序相反;
  11) 最后就是跳到对应的页面中显示数据,或者是跳到下一个action继续执行。

Unity UGUI深度优化 Unity UGUI优化相关 阅读详情

相关推荐

线上专利申请(超详细)| 签名确认

在【法人登录】页面点击【证书登录】按钮,弹出证书登录提示框,点击【确 认】按钮,进入到输入证书密码页面,点击【取消】按钮,取消本次操作。企业在提交申请时,需要增加签名,如使用企业账户点击提交,会弹出“法人、代理机构不能签名,请使用经办人签名”,这个时候就需要换个账号了。在需要签名时,将专利官网的登录方式点击法人登录,选择扫码登录,使用移动端经办人账户的扫一扫功能扫描登录。登录完成后,再点击签名,使用移动端扫一扫功能,扫描签名,输入证书号,确认签名,并提交。最后,祝大家的申请都成功!

weixin_62112323的博客 9112

Struts2框架简单入门

Struts2入门

qq_42640067的博客 7744

SAP面试全过程(已拿offer)

周五打电话给我说过了SAP第一轮面试,第二轮要在下周四北京,这几天终于体会到了什么叫做重压下的感觉,越复习越虚,看别人的面经都感觉卧槽这问题也巨难了吧...连去北京可以见妹子这种事情都感觉一点心情都没有。面前准备固然是要有的,但关键是平时就要有料,多想想自己做的项目。当作一个给自己的提醒吧!

cloudray8580的专栏 4万+

简单了解Struts与Struts2

一、概念           Struts通过采用JavaServlet/JSP技术,实现了基于JavaEEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品。           对于Struts1框架而言,由于与JSP/Servlet耦合非常紧密,因而导致了一些严重的问题。首先,Struts1支持的表现层技术单一。由于Struts1出现的年代比较早,那个时候

程序媛~ 1154

模拟IC设计笔记:拆解一个经典的时钟占空比校正(DCC)电路模块,从理论到SPICE仿真

本文深入解析了时钟占空比校正(DCC)电路在模拟IC设计中的关键作用,特别是在高速ADC应用中。通过晶体管级拆解,详细介绍了基于电荷泵和积分器的模拟反馈型DCC电路设计,包括占空比检测、误差放大与校正执行单元的实现。文章还提供了SPICE仿真验证方法,确保电路在100MHz时钟下的稳定性和性能。

weixin_33725722的博客 428

Py6S安装失败?手把手教你解决‘6S executable not found‘错误

本文详细解析了Py6S安装过程中常见的'6S executable not found'错误,提供了从MinGW-w64安装到Fortran编译器配置的完整解决方案。通过优化编译环境和进阶技巧,帮助用户高效完成大气辐射传输建模,提升科学计算效率。

x1y2z的博客 644

Struts2 入门学习总结一

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

vel970912的博客 1万+

Unreal 5 MetaHuman插件全流程:从安装到角色动画生成

本文详细介绍了Unreal 5中MetaHuman插件的全流程使用指南,从安装配置到角色动画生成。通过Quixel Bridge下载预设角色,利用面部捕捉技术赋予数字人模型生命力,并提供材质编辑、性能优化等进阶技巧,帮助用户快速创建照片级真实的虚拟角色。

weixin_29009081的博客 830

Struts2学习笔记(一) struts2的下载以及jar包的导入

一、struts2的下载 struts2下载地址:https://struts.apache.org 进入后点击download即可进入下载页面 在这里我们可以选择不同版本的struts2进入下载 下载时我们选择第一个,第一个中包括了下面所有的 这里我们以2.3.37版本为例,下载完成后我们对压缩包进行解压 二、struts2的基本jar包导入 在这之后我们就可以去创建一个Dynamic ...

showadwalker的博客 6448

2025.06.16【转录组】|Ribo-seq数据流程详解(二 基因组比对)

本文详细介绍了Ribo-seq数据分析中的比对流程,包括环境准备、STAR索引构建、比对参数设置及结果统计可视化。通过samtools和R脚本实现比对质量评估,提供常见问题解决方案和关键指标解读。该流程强调比对参数优化和质量控制,为后续翻译组学分析奠定基础。

1980

在 SAP 里玩转 FTP:标准程序 RSFTP00x 全景解析与落地实践

摘要:SAP系统通过封装的标准FTP程序(RSFTP001-008)提供便捷的文件传输能力,适用于各类集成场景。关键点包括:1)依赖SAPFTP可执行程序和RFC目的地;2)使用RSFTP005进行前置检查并生成RFC配置;3)标准报表各司其职,如RSFTP002用于命令测试、RSFTP007/008提供参考实现;4)开发时组合FTP_CONNECT/COMMAND/DISCONNECT等函数模块。特别注意前台(SAPFTP)与后台(SAPFTPA)的环境差异,这是常见故障点。该方案通过标准化工具链显著降低

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 210

struts2简单入门demo

前言: 相信大家知道Struts2也是一个mvc框架。那么接下来就不多说废话,直接开始进行简单的环境搭建,写一个demo直观一点。 一、使用idea开发工具来创建一个Struts2项目 二、将需要的jar包导入到lib中 Struts的官网点击下载下载所需jar包:此处用的是struts-2.5.20-min-lib.zip。下载完毕后,将jar包复制到lib里面。然后右键将jar包添加到库中去...

Abdullahi_kanye的博客 843

结构光之相移法+多频外差的数学原理推导

‍论文:基于数字光栅投影的结构光三维测量技术与系统研究 [博]作者:李中伟 华中科技大学 2007功能:相移法:多频外差(三频N步相移法)01 相移法图1 待写入投影仪的理想N步相移条纹通常对于 步相移来说,生成第 幅条纹图像(如图1所示)的公式如下:402 Payment Required其中::背景光强:调制强度:像素点横向坐标:相移值图2 相机拍摄到的实际 N ......

3D视觉工坊 1189

struts2马士兵笔记

Struts2 学习笔记 ---wjt276       [二○一○年一月五日 完]     目录 01 Struts2-Action 一、         Struts作用: 二、         搭建Struts2的运行环境: 三、

Insist 5486

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Struts2简单实例

本文使用Struts2演示一个最最简单的登录的实例,旨在初步了解Struts2. 首先,看一下实例的目录结构 需要引入的JAR包如下图 web.xml的内容: <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema

梦想起飞的地方,必须用心去经营 2765

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Struts2(一)Struts2配置详解

一、Struts2概述 I.在很长一段时间Struts1在MVC框架中占有绝对的地位,虽然Struts1可以很好地实现将控制与业务逻辑相分离,但是其自身仍然存在这一定的缺陷 1.表现层支持单一    Struts1只支持jsp作为表现层,而在实际开发中不一定只是使用jsp作为表现层,如FreeMarker、Velocity等。 2.对ServletAPI依赖    jsp+Servlet

代码与酒 1342

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Struts2学习笔记(一)初步了解Struts2以及配置

Struts2的基本介绍:       Struts2由传统的Struts1,WebWork两个经典的MVC框架发展而来,所以从Struts2设计的角度来看,还是从Struts2在实际项目中的使用性来看,Struts2都是一个非常优秀的MVC框架。与传统的Struts1相比,Struts2允许使用普通的传统的Java对象作为Action,Action的execute()方法不再与ServletA

江清清的专栏 3350

【Struts2笔记整理一】HelloWorld

如果说的专业点,Struts2 是一款基于 MVC 设计模式的 Web 应用框架,它本质上相当于 Servlet,它是作为控制器(Controller)来建立模型与视图的数据交互。说白了它就是用来 进行 WEB 开发的框架 而已。

小异常的博客 619

Struts2 完整笔记

MVC模式 MVC(Model-View-Controller 模型-视图-控制器)是一个存在于服务器表达层的模型。在MVC经典架构中,强制性地吧应用程序的输入、处理和输出分开,将程序分成3个核心模块——模型、视图、控制器 Struts2框架 Struts是Apache软件基金下的JAKARTA项目的一部分,它目前有两个版本(STRUTS1.X和STRUTS2.X)都是基于MVC经典设计模式的框架 Struts2的体系结构图 在web.xml中配置过滤器 struts2 org.apache.strut

JPA_soul的博客 606

简单搭建STRUTS2项目...

下面给大家介绍一下如何从零开始,搭建一个简单的struts2项目。简单到只有一个JSP页面,和一个ACTION。

kevin5520的博客 621

Struts2 笔记一

1. Struts2 开发步骤这里使用的版本是:Struct2.3.1 导入jar包: 把 \apps\struts2-blank\WEB-INF\lib下的jar都导入eclipse中 配置web.xml配置struts.xml ; 该文件放到src根目录下扩展添加源代码路径: E:/BaiduYunDownload/share/0750_Struts2.3.1/soft/struts

Winge_Fish的博客 474

对Struts2的简单介绍

struts2为我们带来了什么?先看一个原生的Servlet控制器的例子public void service(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //1.获取请求参数 String servletPath = req.getServletP...

qq_42228691的博客 294

Struts2学习笔记(一)

Struts学习笔记(一) 文章目录Struts学习笔记(一)1 回忆使用Filter作为控制器的MVC应用2 struts2初识概述3 Struts2搭建环境4 Struts2第一个应用程序5 Struts2第一个应用程序解析6 Action概述6.1 通过ActionContext获取WEB资源6.2 通过Aware接口获取WEB资源6.3 Struts2通过和Servlet API耦合的方式获取WEB资源 1 回忆使用Filter作为控制器的MVC应用 2 struts2初识概述 3 Struts2搭

m0_50763265的博客 344

Struts2框架学习笔记一:Struts2框架搭建、配置详解

文章目录Struts2框架学习笔记一:Struts2框架搭建、配置详解Struts2框架搭建Struts2拦截器的重要性struts2常量配置struts2动态调用struts2的默认值配置Action类的操作 Struts2框架学习笔记一:Struts2框架搭建、配置详解 Struts2框架搭建 创建一个Dynamic web project项目 在lib文件下导入相应的包,解压Struts压...

公子&小白的博客 1151

Struts 应用转移到 Struts 2 一

Struts 应用转移到 Struts 2 一   有很多人都很熟悉 Struts, 无论是从项目中直接获得的实战经验还是从书中了解到的。我们这一系列文章,将通过一个由 Stuts 转移到 Struts2 简单的例子向大家展现Struts2的所有特征。    在我们开始这个例子之前,你需要去知道一点 Struts2的背景知识。 在第一部分的文章中,我们将介绍Struts2与Struts的核

首席技术执行官CTO(Chief Technology Officer)|技术总监--邓斌博客 1822

简单了解Struts2中的值栈

值栈对象 用户提交Action请求后系统当即创建Action实例和值栈对象,Struts2中的值栈ValueStack是一个接口,其实现类为OgnlValueStack。其中最重要的两个属性是CompoundRoot root(本质是ArrayList,值栈操作时视其为栈)和transient Map<String, Object> context(OgnlValueStack将创建的map的引用传递给context)。 Tips:transient关键字可以将一个类的指定属性忽略序列化传输..

WanAkiko. 249
上一篇: event.keycode大全(javascript)
下一篇: Struts2笔记二之struts.xml
Edifiergl
博客等级 码龄16年 7粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值