`
sgl124764903
  • 浏览: 174621 次
  • 性别: Icon_minigender_1
  • 来自: 邯郸
社区版块
存档分类
最新评论

Struts2中的链接标签 <s:url>和<s:a>---在action中获取jsp表单提交的参数

阅读更多
普通链接
Web程序中最普通的应用是链接到其他页面,下面看Welcome.jsp。
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
    <title>Welcome</title>
    <link href="<s:url value="/css/tutorial.css"/>" rel="stylesheet"
          type="text/css"/>
</head>
<body>
<h3>Commands</h3>
<ul>
    <li><a href="<s:url action="Login_input"/>">Sign On</a></li>
    <li><a href="<s:url action="Register"/>">Register</a></li>
</ul>
</body>
</html>
1.1说明
1.<%@ taglib prefix="s" uri="/struts-tags" %>
此句表示导入struts标签,并以s为前缀。即以s为前缀的标签均来自struts标签库。
2.<link href="<s:url value="/css/tutorial.css"/>" rel="stylesheet" type="text/css"/>
此句表示利用url标签导入一个路径,链接到一个文件,注意此路径为项目下的绝对路径。
3.<a href="<s:url action="Login_input"/>">Sign On</a>
此句表示利用url标签链接到一个action。
1.2注册action
我们在struts.xml中注册一个action来显示welcome.jsp。
<action name="Welcome">
       <result>/example/Welcome.jsp</result>
</action>
注意此action注册在package example下,所以在地址栏中敲入http://localhost:8080/StrutsHelloWorld/example/Welcome.action(StrutsHelloWorld是project名),会导向到Welcome.jsp。
2.使用通配符
对于上面的action注册,我们也可以用下面的语句代替。
<action name="*">
       <result>/example/{1}.jsp</result>
</action>
此句的意思是,如果在没有找到匹配的action名称的情况下,默认调用action名称.jsp。第一句中星号指任意,而第二句中{1}指代第一句中星号指代的内容。

    举个例子,如果在地址栏中敲入http://localhost:8080/StrutsHelloWorld/example/1.action,则系统查找struts.xml,发现没有name为1的action,即最后调用name为星号的这个action,根据此action,将输出/example/1.jsp。
或者读者可以直接点击Welcome.jsp中的两个超链接,系统将会报错找不到Login_input.jsp和Register.jsp。因为这两个action还没有注册,也没有相应的jsp文件。
3.带参数的链接
超链接后面带有参数大家不会陌生,诸如http://www.apache.com/?language=ch。这个链接后面带有一个language参数,其值为ch。你可以通过request.getParameter(“language”)找到参数值。下面演示在struts2中如何设置带参数的链接。看HelloWorld.jsp。
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>Hello World!</title>
</head>
<body>
<h2><s:property value="message" /></h2>
<h3>Languages</h3>
<ul>
       <li>
       <s:url id="url" action="HelloWorld">
              <s:param name="request_locale">en</s:param>
       </s:url>
       <s:a href="%{url}">English</s:a>
       </li>
       <li>
       <s:url id="url" action="HelloWorld">
              <s:param name="request_locale">es</s:param>
       </s:url>
       <s:a href="%{url}">Espanol</s:a>
       </li>
</ul>
</body>
</html>

3.1说明
1.<s:url id="url" action="HelloWorld">
              <s:param name="request_locale">en</s:param>
</s:url>
此段表示设置一个url标签指向名为HelloWorld的action,此标签带一个id取名为url,后面会用到。带一个参数request_locale,其值为en。
2.<s:a href="%{url}">English</s:a>
此句用到了struts2的超链接标签,连接的地址即为1中url,点击English,发出的信息为:http://localhost:8080/StrutsHelloWorld/example/HelloWorld.action?request_locale=en
3.2注册action到struts.xml
<struts>
       <package name="example" namespace="/example"
              extends="struts-default">
              <action name="HelloWorld" >
                     <result>/example/HelloWorld.jsp</result>
              </action>
分享到:
评论

相关推荐

    struts2 标签使用

    通过以上几个示例,我们可以看到 `&lt;s:if&gt;` 标签在 Struts2 中的应用是非常灵活和强大的。它可以用来实现各种复杂的逻辑判断,如数值比较、字符串匹配等。此外,结合其他标签如 `&lt;s:iterator&gt;`,可以实现更复杂的逻辑...

    Struts2中使用标签实现组合查询和带分页的例子

    在Struts2框架中,`&lt;sx:&gt;`标签是Struts2 XWork库的一部分,用于增强JSP页面的功能,提供更强大的数据绑定和表单处理能力。本篇将重点讲解如何利用`sx:`标签实现组合查询和带分页功能。 首先,让我们了解下Struts2的...

    struts2<s:if>使用心得

    在Struts2框架中,`&lt;s:if&gt;`标签用于条件判断,类似于Java中的if语句。本篇文章将深入解析这段代码所涉及的关键知识点,并通过实际案例帮助理解如何使用Struts2中的`&lt;s:if&gt;`标签进行逻辑控制。 ### Struts2概述 ...

    Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)

    在JSP页面中,我们可以使用Struts2的标签库(例如`s:textfield`, `s:checkbox`, `s:select`等)来创建表单元素,并将这些元素与Action的属性绑定。对于集合类型,我们通常会在JSP中通过迭代器遍历并生成多个表单...

    struts2 标签库 帮助文档

    1. &lt;s:generator separator="" val=""&gt;&lt;/s:generator&gt;----和&lt;s:iterator&gt;标签一起使用 H: 1. &lt;s:head/&gt;-----在&lt;head&gt;&lt;/head&gt;里使用,表示头文件结束 2. &lt;s:hidden&gt;&lt;/s:hidden&gt;-----隐藏值 I: 1. &lt;s:...

    Struts2全部标签使用说明

    以上只是Struts2标签库的一部分,实际使用中还有更多标签如`&lt;s:textfield&gt;`(文本输入框)、`&lt;s:textarea&gt;`(文本区域)、`&lt;s:submit&gt;`(提交按钮)等,每个都有其特定的用途,极大地简化了JSP页面的编写。在开发时...

    Struts标签集合简介

    `&lt;s:param&gt;` 传递参数给其他标签,`&lt;s:password&gt;` 创建密码输入框,`&lt;s:property&gt;` 获取并显示对象的属性值。 R. `&lt;s:radio&gt;, &lt;s:reset&gt;, &lt;s:select&gt;`: 创建单选按钮、重置按钮和下拉选择框。 S. `&lt;s:set&gt;, &lt;s:...

    Struts 1.XX <html:file>的使用

    `&lt;html:file&gt;`是Struts提供的一个标签,主要用于处理用户在HTML表单中上传文件的功能。在Struts 1中,这个标签简化了文件上传的复杂性,使得开发者可以方便地将用户选择的本地文件传递到服务器。 首先,我们来看`...

    struts2标签解释

    `&lt;s:param&gt;`为其他标签传递参数,比如在URL中添加查询参数。 `&lt;s:password&gt;`创建密码输入框,确保输入内容不被明文显示。 `&lt;s:property&gt;`标签用于获取"value"属性的值,可以用来显示Action中的属性值。 P. `&lt;s:...

    struts 2 s标签 struts 2 s标签

    这些只是Struts 2 S标签库中的一部分,实际上还有许多其他标签,如`s:textfield`(文本字段)、`s:textarea`(文本区域)、`s:submit`(提交按钮)等等,它们极大地简化了MVC模式中的视图层开发。通过合理使用这些...

    Struts_2_标签库(文档手册)_Tags-API-CLSW-JSP

    类似于Struts 1.x中的`&lt;bean&gt;`标签,用于在JSP页面中访问和操作JavaBean对象的属性。 #### `&lt;s:checkbox&gt;` 和 `&lt;s:checkboxlist&gt;` 标签 分别用于生成单个复选框和复选框列表,支持数据绑定和值列表选择。 #### `...

    struts2.0 标签清单

    `&lt;s:form&gt;` 标签用于创建表单,可以指定Action、Method等属性,是Struts2中最常用的标签之一。 ```xml &lt;s:form action="saveData"&gt; &lt;!-- 表单内容 --&gt; &lt;/s:form&gt; ``` ### 17. `&lt;s:generator&gt;` 标签 `&lt;s:...

    Struts2表单标签使用范例

    除了`&lt;s:textfield&gt;`,Struts2还提供了多种表单标签,如`&lt;s:password&gt;`用于创建密码输入框,`&lt;s:textarea&gt;`用于创建多行文本输入框,`&lt;s:radio&gt;`和`&lt;s:checkbox&gt;`用于创建单选按钮和复选框,以及`&lt;s:select&gt;`用于...

    struts2-s标签

    而在 Struts2 中,所有的标签都被统一管理,并通过在 JSP 文件头部声明 `&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;` 来启用 Struts2 的标签库。这种方式简化了开发过程中的配置工作,使得开发者可以更加专注于...

    Struts标签

    - `&lt;s:url&gt;`和`s:a&gt;`:创建链接,`&lt;s:url&gt;`用于生成URL,`&lt;s:a&gt;`则相当于HTML的`&lt;a&gt;`标签。 - `&lt;s:action&gt;`:执行一个Action并输出结果。 - `&lt;s:debug&gt;`:用于在页面上显示Action上下文的详细调试信息。 使用...

    struts2的s标签

    要在JSP页面中使用Struts2的S标签,首先需要在页面顶部添加如下声明: ```jsp &lt;%@ taglib prefix="s" uri="/struts-tags" %&gt; ``` 这行代码的作用是将Struts2提供的标签库导入到当前JSP页面中,并指定前缀为“s”。...

    struts2_标签使用方法.doc

    在Struts2中,不再像Struts1.x那样将标签库分为html、bean、logic和tiles等类别,而是统一使用一个`&lt;s&gt;`前缀的标签库,只需在JSP页面头部引入`&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;`即可使用所有标签。...

    struts2标签大全详解

    2. `&lt;s:action&gt;`:执行视图中的一个Action,可以传递参数并跳转到对应的Action结果页面。 3. `&lt;s:actionerror&gt;`:显示Action级错误信息,如果有错误则会被渲染出来。 4. `&lt;s:actionmessage&gt;`:显示Action级消息,...

    struts2 表单标签的使用

    此外,Struts2表单标签还可以与其他标签结合使用,如`&lt;s:actionerror&gt;`、`&lt;s:fielderror&gt;`和`&lt;s:property&gt;`,以显示验证错误信息或动态显示数据。`&lt;s:actionerror&gt;`显示全局错误,`&lt;s:fielderror&gt;`显示特定字段的...

    struts2标签介绍

    在Struts2中,所有的标签都统一在`&lt;s&gt;`前缀下,通过引入`&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;`就可以在页面上使用这些标签。 **A组标签:** 1. `&lt;s:a&gt;` - 用于创建超链接,与HTML的`&lt;a&gt;`标签类似,可以...

Global site tag (gtag.js) - Google Analytics