struts2标签的使用(Using Struts 2 Tags)

Struts 2标签的应用 利用Struts 2标签创建ex3.jsp页面,此页面提交给tag.action,在structs.xml中配置这个action的转发视图为result.jsp在result.jsp页面中显示ex3.jsp页面控件的值。(源代码和实验报告) 立即下载

这篇是翻译 Apache Struts 2 Documentation > Home > Tutorials > Getting Started的第三篇Using Struts 2 Tags。(因为开头承接前文,所以这里从第三段开始翻译。)

Web应用程序与传统网站的区别在于Web应用程序可以创建一个动态响应。为了更容易在一个页面上引用动态数据,struts2框架提供了一些标签。这些标签中的有些模仿了标准Html标签并且提供了附加的功能,其他标签没有按照HTML标准来创建,但是非常有用。

为了在视图页面上使用struts2标签,你必须添加一个标记库指令。通常,标记库是这样的<%@ taglib prefix="s" uri="/struts-tags" %>。所以struts2的标签的前缀是“s”。如果你想要真切的了解struts2标签的TLD文件,你可以再META-INF文件夹的Struts2 core的jar包中找到它。

Struts 2 url Tag(struts2的url标签)

struts2标签的一个用处就是创建一个其他web资源的链接,尤其是当前应用的其他资源。

虽一个很常见的用例在web应用程序中链接到其他页面。然HTML提供了一个简单的标签来创建超链接,HTML标记通常需要我们包括冗余信息。并且HTML很难访问框架提供的动态数据。

一个很常见的用法就是在web应用程序中链接到其他页面。正如在Hello World教程中我们在index.jsp中添加的链接到hello.action所用的url标签。请参阅url文档了解更多信息的url标记。

<a href="<s:url action='hello'/>">Hello World</a>

当你运行Hello World教程在您的Servlet容器时,然后鼠标点击被标签创建的Hello World超链接你会看到,url创建了hello.action(相对于web上下文的根文件夹)。
  
  查看这个教程的struts.xml配置,你会发现这个:

<action name="hello" class="org.apache.struts.helloworld.action.HelloWorldAction" method="execute">
  <result name="success">/HelloWorld.jsp</result>
</action>
action节点把hello.action映射到了HelloWorldAction。如果运行成功 return success,那么视图页面HelloWorld.jsp(在web应用的根文件夹)将会返回给我们。

另一个用法是,在url中需要包含一个带有请求请求字符串参数值(query string parameter value)例如userName的形式。为了添加这个参数,我们需要用struts2 param 标签内嵌在url标签中。

对于上面这个用法,我们将以下内容添加到index.jsp,然后请求Hello World。

<s:url action="hello" var="helloLink">
  <s:param name="userName">Bruce Phillips</s:param>
</s:url>
<p><a href="${helloLink}">Hello Bruce Phillips</a></p>
对于url标签作为<a>标签的href属性,我们不如把s:url分离到我们自己代码块中。把struts2 param标签内嵌到url标签中。这个标签让你指定一个参数名(e.g. userName)和一个对应的值(e.g. Bruce Phillips)。

注意var属性的用法。这个var的值是一个引用,根据这个引用我们能在下面的代码中创建这个url。

根据上面的锚标记。发现这个href的值是${helloLink}。视图将会把这个超链接替换成我们用url标签创建的${helloLink}的引用。需要注意的是这个请求字符串参数值将被适当的变成URL编码。

在后面的教程中,我们将介绍如何Struts可以访问请求字符串参数值。


后面的有时间再翻,先贴点英文标记一下。

Struts 2 Form Tags

Most applications will use several data entry forms. The Struts 2 tags make creating input forms easy. Consult the Form Tags Reference for all the details about the Struts 2 form tags.

Each of the Struts 2 form tags has numerous attributes to mimic the normal HTML form tag attributes.

To create the outer shell of the form, use the Struts 2 form tag. The action attribute sets the action name to submit to.

Add the following markup to index.jsp after the Hello Bruce Phillips link.



GBT 27930-2015/2023国标充电协议A类CAN报文ID说明 国标充电CAN的ID,仅供学习参考。 阅读详情

相关推荐

即梦文生视频逆向接口部署使用

有的小伙伴不知道这个地址如何填写,你可以理解是步骤3上提供的 服务器或者本地电脑IP 地址(不要写 http://127.0.0.1 或者http://localhsot ) 是 (192.168.XXX.XXX 参考)

weixin_44245188的博客 3188

编写简单的Struts2程序

实验一 编写简单的Struts2程序 一、实验目的 能正确配置Struts 2开发环境,了解和熟悉Struts 2的开发流程、了解和熟悉Struts2标签的使用方法。 二、实验要求 1.正确创建Action类; 2.配置struts.xml文件; 3.掌握在视图中访问Action的方法. 4. 掌握在视图中多方法调用同一个Action的方法 5.掌握常用标签textfield、radio、paa...

hui1097的博客 638

QT/C++实现健壮HTTP POST客户端:从基础到异常处理与性能优化

HTTP协议作为客户端与服务器通信的基石,其POST方法在数据提交、API交互等场景中扮演着核心角色。其工作原理基于请求-响应模型,通过封装TCP连接与协议细节,为应用层提供了简洁的数据传输接口。在C++桌面与嵌入式开发中,直接使用底层Socket实现HTTP不仅复杂且易出错,而利用框架进行高级封装能显著提升开发效率与代码健壮性。QT框架的`QNetworkAccessManager`等组件正是为此设计,它通过信号槽机制提供异步网络编程模型,有效管理连接与协议解析。一个健壮的HTTP客户端需要妥善处理网络波

weixin_29176179的博客 384

Struts2框架3.标签

在服务器端验证的标签  有些时候我们要做两次验证,一次是用js在前台做验证,第二次是在服务端做验证,这样是为了防止客户端禁用js。例如在服务端验证用户名是否为空,使用if判断,如果用户名为空,使用super.addFieldError(String fieldName, String errorMessage);方法来记录错误信息。在jsp页面则要使用标签来接收错误信息,写成这样的话是获取所有错

柠檬需要糖 359

鸿蒙OpenHarmony南向开发 轻量系统芯片移植指南(一)

OpenHarmony系统采用"系统>子系统>部件"层级架构,支持功能模块化裁剪。本文介绍了关键子系统及移植方法:1)启动恢复子系统负责内核到应用间的进程初始化,需配置启动入口标识及链接脚本;2)文件子系统提供基础文件操作接口,需适配HAL层文件读写功能,可通过Flash模拟、轻量文件系统或厂商自有方案实现。移植过程需修改config.json配置,添加对应组件定义及功能实现。系统采用模块化设计,开发者可根据实际需求灵活配置所需子系统功能。

yx525623的博客 1134

MATLAB 设置legend加标题

x1 = linspace(0,5); y1 = sin(x1/2); plot(x1,y1) hold on x2 = [0 1 2 3 4 5]; y2 = [0.2 0.3 0.6 1 0.7 0.6]; scatter(x2,y2,'filled') hold off legend({'sin(x/2)','2016'},'Location','northwest','Orientation','horizontal')%水平 legend添加标题 lgd = legend; lgd.Fon

早起CaiCai的学习空间 4714

struts2标签

1.       创建web工程,添加struts2框架所需的jar包。2.       添加struts2过滤去支持。3.       创建struts.xml文件。&lt;?xml version="1.0"encoding="UTF-8" ?&gt; &lt;!DOCTYPE struts PUBLIC "-//ApacheSoftware Foundation//DTD Struts C...

飞鸿的博客 298

OpenSceneGraph编译、安装、开发环境

详细描述WIndows 10下使用Visual Studio 2019编译OpenSceneGraph 3.6.5的操作流程

国产CAx(CAD/CAE/CAM)软件研发 8772

Struts2标签的使用

strust2标签实践总结 1:输出action中属性值,在jsp页面中显示用:  2:在页面中实现自动增加的序号用iterator的statuts的index属性 eg:                    3:在action类中取得request和session对象的方法  Map session = ActionContext.ge

javaerSir的专栏 1312

15 君正IPC库开发总结

在前面的章节中,我们介绍了君正ISP、视频采集、音频采集、音频播放、云台电机、移动侦测算法、人形侦测算法、移动跟踪算法等的封装。那么,应用层如何使用这些封装好的接口呢?根据设计模式中的依赖倒置原则:高层次的模块不应该依赖于低层次的模块,它们都应该依赖于抽象。因此,应用层应当只能感知到我们封装的接口类,而不应当感知到其对应的具体实现类。

hope_wisdom的技术博客 1662

7.91版本unidbg调用方式

【代码】xhs最新7.91版本unidbg调用方式。

Codeooo 博客 1107

使用Struts2标签

Struts2提供了大量标签帮助开发表现层页面,Struts2标签库与Struts1相比,不依赖于任何表现层技术,大部分可以在各种表现层技术中使用,包括最常用的jsp页面,也可以在Velocity和FreeMarker等模板技术中使用。 注:极小部分在某些表现层中受到限制 还记得如何自定义标签库吗? ...

chen_bin_的博客 1365

AI Agent开发第82课-手把手教你把paddleocr-vl做成mcp使其在DIFY里运行

本文详解如何将国产顶尖多模态 OCR 模型 PaddleOCR-VL 封装为标准 MCP(Model Calling Protocol)服务,并通过自研的 HTTP-based MCP Client 接入 Dify 1.10,实现 AI Agent 在对话中自动识别并调用 OCR 能力。该方案已在某头部保险公司真实业务流程中落地,使用了当前最先进的“Agentic AI 原生”设计思想。

打造全国最全的AI Agent开发知识领域的博客 1626

Struts2标签错误:using Struts tags without the associat解决

由于在使用的web应用中一些特殊应用的关系,web.xml的配置改为:filter>    filter-name>struts2filter-name>     filter-class>     org.apache.struts2.dispatcher.FilterDispatcher      filter-class>  filter>  taglib>    taglib-uri>st

网络 573

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Struts2标签问题-using Struts tags without the associat

&lt;filter-mapping&gt; &lt;filter-name&gt;struts2&lt;/filter-name&gt; &lt;url-pattern&gt;*.jsp&lt;/url-pattern&gt; &lt;/filter-mapping&gt;      最近使用struts,在使用标签的时候,出现了这样一个问题。      原本使用标签,引用方法是...

皇马啸西风的一亩三分地 126

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

struts2 标签使用异常 The Struts dispatcher cannot be found. This is usually caused by using Struts tags ...

The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, wh...

管子(zero)的杂乱空间 285

struts2 标签使用异常 The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filte

<br />The Struts dispatcher cannot be found.  This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher needed for

669

Struts2标签问题-The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. S

<br />今天在写登录系统时,出现The Struts dispatcher cannot be found.  This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher

yhsap 1297

Struts-Tags标签的用法

一、通用标签(常用) property property:<s:property value=“name” /> property取字符串:<s:property value="‘你好’" /> property设置默认值:<s:property value=“admin” default=“我” /> set set设值(使用默认scop时,存在ActionContext和request中;id、name已废弃,现用var、value存储对象值;常用于换名以便利使用)

岛田悠米 1520

struts2 标签库 /struts-dojo-tags not found&Expression parameters.parseContent is undefined

struts2 标签库 /struts-dojo-tags not found&Expression parameters.parseContent is undefined on line 45, column 28 in template/ajax/head.ftl.

jsjdtb356的博客 3826

struts2 标签文件struts-tags.tld使用设置

在工程中使用struts2标签一、struts2标签定义文件在struts2-core-2.0.11.1/META-INF 下面,文件名为struts-tags.tld二、如果工程使用了servlet2.3规范,要做两件事,就能在工程中使用struts2标签了1: 在web.xml中增加标签库的定义   /struts-tags   /WEB-INF/lib/struts2-core-2.

shangclai的专栏 1340

Struts2教程三——Using Struts 2 Tags

<!-- .dp-highlighter {width:95%!important} --> <!-- .footer {padding-top:4px; color:#666} --> 本教程假设你已完成Hello World教程,可以在http://code.google.com/p/struts2-e

RO_wsy的专栏 3727

struts2的struts-tags标签

这样写出来的不用指定文件的后缀名 会在JSP页面中看到这样的一个标签 这个标签是找到的struts2-core-2.0.11.2.jar文件中的META-INF/struts-tags.tld文件 jar包放在lib目录引用没有问题 但是jar要是引用进去就会有找不到的问题... 也可以这样写   这样写出来的不用指定文件的后缀名 或者这么写也可以..

yy773112的专栏 1036

Struts2 官方教程之Struts Tags(七)——Generic Tags(Data Tags )

a Edit Page   Browse Space   Add Page   Add News Description A tag that creates a HTML .This tag supports the same attributes as the "url" tag, including nested parame

zsm653983的专栏 4408

Struts tags详解(Data tags)

主要介绍Struts2中一些常用的标签,并列举一些简单的例子,帮助理解,文中的一些内容来自于Struts2的官方文档,翻译得不是很好,但是大体不会影响对相关内容的理解。

Lue 1万+
上一篇: spring3.1.2+struts-2.3.4.1+hibernate4.1.6框架整合(基础)
下一篇: mysql中的单双引号
ewth126
博客等级 码龄17年 8粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值