首页 > 编程笔记 > Java笔记

Struts2 url标签:自动生成URL地址

Struts2 框架中,一个 Action 对象的 URL 映射地址包含名称空间、调用方法等多个参数,这样的 URL 可以直接进行编写,也可以使用 Struts2 框架提供的 url 标签自动生成 URL 地址,url 标签中提供了多个属性满足不同格式的 URL 需求。

语法:

<s:url value="actionTag.action">
  <s:param name="param" value="'frank'"/>
</s:url>


url 标签是一个很常用的标签,在 url 标签中可以向 url 传递请求参数,也可以通过 url 标签提供的属性生成不同格式的 url。

url标签的属性说明如表所示。

url 标签属性及说明
名称 是否必须 类型 说明
action 可选 String Action对象的映射URL,也就是Action对象的访问地址
anchor 可选 String 此URL的锚点
encode 可选 boolean 是否对参数进行编码,默认值为true
escapeAmp 可选 String 是否将“&”转义成为“&amp”
forceAddSchemeHostAndPort 可选 boolean 是否添加URL的主机地址及端口号,默认值为false
includeContext 可选 boolean 生成的URL是否包含上下文路径,默认值为true
includeParams 可选 String 是否包含可选参数,可选值为none、get、all。默认值为none
method 可选 String 指定请求Action对象所调用的方法
namespace 可选 String 指定请求Action对象映射地址的名称空间
scheme 可选 String 指定生成URL所使用的协议
value 可选 String 指定生成URL的地址值
var 可选 String 定义生成URL变量名称,可以通过此名称引用URL

示例

创建程序中的首页 index.jsp,在此页面中通过 url 标签生成不同格式的 url 地址,关键代码如下:
<body>
  <div>
    <h2>url标签</h2>
    <ul>
      <li>生成Action链接</li>
      <li>
        <s:url action="user.action" method="add" namespace="admin"></s:url>
      </li>
    </ul>
    <ul>
      <li>生成Action链接(带有主机名及端口号)</li>
      <li>
        <s:url action="user.action" method="add" namespace="admin"
               forceAddSchemeHostAndPort="true"></s:url>
      </li>
    </ul>
    <ul>
      <li>生成Action链接(带有参数)</li>
      <li>
        <s:url action="user.action"method="add" namespace="admin">
          <s:param name="username" value="'mr'"></s:param>
          <s:param name="password" value="'mrsoft'"></s:param>
        </s:url>
      </li>
    </ul>
  </div>
</body>

所有教程

优秀文章