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

本文深入探讨了Struts2框架的动态链接和表单创建功能,通过url标签实现页面间高效跳转,并利用FormTags简化数据输入表单的创建过程。介绍了如何在视图页面中使用struts2标签,以及如何通过标记库指令添加标签库。同时,展示了如何在链接中包含动态请求字符串参数,并解释了Struts2如何访问这些参数。

这篇是翻译 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.



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值