Strtus2标签<s:url>

在没有使用Struts2的时候可以使用el来进行url传参。而在Struts2中不推荐使用el(其实在Struts2.0.0.11之后就不再支持el)而推荐使用功能更为强大的ognl表达式语言。那么怎么使用ognl实现url传参?

<s:url>就是解决这一问题的标签

<s:url>标签一般和超链接 <a>一起使用,用于带多个参数。

[html] view plaincopyprint?

  1. <ahref="
  2. <s:urlaction="">
  3. <s:paramname=" "value=""></s:param>
  4. <s:paramname=" "value=""></s:param>
  5. <s:paramname=" "value=""></s:param>
  6. </s:url>"
  7. >测试连接</a>
  1. <a href="
  2. <s:url action="">
  3. <s:param name=" " value=""></s:param>
  4. <s:param name=" " value=""></s:param>
  5. <s:param name=" " value=""></s:param>
  6. </s:url>"
  7. >测试连接</a>

<s:url>生成一个url地址,可以通过url标签制定的<s:param>子元素向URL地址发送请求参数

[html] view plaincopyprint?

  1. <s:urlaction=""> 指定请求地址
  2. <s:paramname=""value=""></s:param> 指定参数
  3. </s:url>
  1. <s:url action=""> 指定请求地址
  2. <s:param name="" value=""></s:param> 指定参数
  3. </s:url>

例子:

[html] view plaincopyprint?

  1. <!--action是action的名字,为url添加参数使用param标签-->
  2. <s:urlvar="url"action="mainPage">
  3. <s:paramname="id"value="123"/>
  4. </s:url>
  5. <!--使用上面定义的url-->
  6. <s:ahref="%{url}">测试连接</s:a>
  7. 该方法在生成的页面源码中生成如下代码
  8. <ahref="/NetBookShop_081029/mainPage?id=123">测试连接</a>
  1. <!--action是action的名字,为url添加参数使用param标签-->
  2.  
  3. <s:url var="url" action="mainPage">
  4. <s:param name="id" value="123"/>
  5. </s:url>
  6.  
  7. <!--使用上面定义的url-->
  8. <s:a href="%{url}">测试连接</s:a>
  9.  
  10. 该方法在生成的页面源码中生成如下代码
  11. <a href="/NetBookShop_081029/mainPage?id=123">测试连接</a>

includeParams属性

[html] view plaincopyprint?

  1. <!--最重要的属性includeParams,该属性有三个值:none get all,默认值为get-->
  2. <!--属性值为get时,该url会将访问其所在jsp的的请求的所有get方法的参数添加到自身来-->
  3. <!--属性值为all时更是将get和post的的参数值全部添加到自身来-->
  4. <!--一般我们并不需要额外的参数,所以定义为none-->
  5. <s:urlvar="url"action="mainPage"includeParams="none">
  6. <s:paramname="id"value="123"/>
  7. </s:url>
  1. <!--最重要的属性includeParams,该属性有三个值:none get all,默认值为get-->
  2. <!--属性值为get时,该url会将访问其所在jsp的的请求的所有get方法的参数添加到自身来-->
  3. <!--属性值为all时更是将get和post的的参数值全部添加到自身来-->
  4. <!--一般我们并不需要额外的参数,所以定义为none-->
  5. <s:url var="url" action="mainPage" includeParams="none">
  6. <s:param name="id" value="123"/>
  7. </s:url>

includeContext属性

[html] view plaincopyprint?

  1. <!--includeContext:有true和false两个值。url中是否包含上下文,也就是在url中的项目名-->
  2. <!--这个一般不用改,让它自动包含,否则会定位到服务器的根目录下-->
  3. <s:urlvar="url"action="mainPage"includeContext="false">
  4. <s:paramname="id"value="123"/>
  5. </s:url>
  6. 生成的url就下面的样子了,注意在普通的html中使用/会定位到服务器的根目录,而在struts的标签里使用/会自动添加上下文,所以不用麻烦的指定项目名
  7. <ahref="/mainPage?id=123">url</a>
  1. <!--includeContext:有true和false两个值。url中是否包含上下文,也就是在url中的项目名-->
  2. <!--这个一般不用改,让它自动包含,否则会定位到服务器的根目录下-->
  3. <s:url var="url" action="mainPage" includeContext="false">
  4. <s:param name="id" value="123"/>
  5. </s:url>
  6. 生成的url就下面的样子了,注意在普通的html中使用/会定位到服务器的根目录,而在struts的标签里使用/会自动添加上下文,所以不用麻烦的指定项目名
  7. <a href="/mainPage?id=123">url</a>

Method属性

[html] view plaincopyprint?

  1. <!--method用于指定执行action的方法 这个等同于action="mainPage!ok"-->
  2. <s:urlvar="url"action="mainPage"method="ok">
  3. <s:paramname="id"value="123"/>
  4. </s:url>
  1. <!--method用于指定执行action的方法 这个等同于action="mainPage!ok"-->
  2. <s:url var="url" action="mainPage" method="ok">
  3. <s:param name="id" value="123"/>
  4. </s:url>

namespace属性

[html] view plaincopyprint?

  1. <!--指定命名空间后,生成的url会使用相对路径,具体的看我的结果-->
  2. <s:urlvar="url"action="mainPage"namespace="user">
  3. <s:paramname="id"value="123"/>
  4. </s:url>
  5. 结果如下
  6. lt;a href="user/mainPage?id=123">url</a>

Strtus2标签之<s:url>的更多相关文章

  1. MyBatis配置文件中的标签mappers的子标签mapper的url属性

    在浏览器中输入file:/可以打开访达根目录,file:后面至少跟一个杠 MyBatis配置文件中的标签mappers的子标签mapper的url属性中file:后面至少要跟两个杠

  2. 04_Django-模板变量/标签/过滤器/继承-url反向解析

    04_Django-模板变量/标签/过滤器/继承-url反向解析 视频:https://www.bilibili.com/video/BV1vK4y1o7jH 博客:https://blog.csdn ...

  3. Javascript 利用a标签自动解析URL分析网址实例

    /* * @function: 通过a标签解析url标签 * @param:url url参数是字符串,解析的目标 通过IE6-9 chrome Firefox测试 * */ function par ...

  4. 利用 a 标签自动解析 url

    很多时候,我们有从 url 中提取域名,查询关键字,变量参数值等的需求,然而我们可以让浏览器方便地帮助我们完成这一任务而不用写正则去抓取.方法就是先创建一个 a 标签然后将需要解析的 url 赋值给  ...

  5. 小技巧之a标签自动解析URL

    我们可能都知道javascript中的window.location对象用来获取当前页面的地址URL,并把浏览器重定向到新的页面.它有protocol.hostname.host.port.searc ...

  6. 自定义分页标签,并使分页标签能获得url中的参数

    如题,要实现一个分页功能,其次,要让分页标签“智能一点”,在分页时能自动带上url后面的参数 <tag> <description>分页标签</description&g ...

  7. JSP标签JSTL(4)--URL

    <c:url>标签作用是将一个URL地址格式化为一个字符串,并且保存在一个变量当中.它具有URL自动重写功能.value指定的URL可以是当前工程的一个URL地址,也可以是其他web工程的 ...

  8. 【javascript】利用 a 标签自动解析 url

    很多时候,我们有从 url 中提取域名,查询关键字,变量参数值等的需求,然而我们可以让浏览器方便地帮助我们完成这一任务而不用写正则去抓取.方法就是先创建一个 a 标签然后将需要解析的 url 赋值给  ...

  9. 打印页面时a标签不显示URL的方法

    以前写博客啊,总想写一篇大作,然后希望能挂到博客园首页,隔一会儿看看阅读量有多少.其实哪有那么多大作,大部分时间都是解决了一个小问题,然后需要记录一下.比如下面这篇. 今天遇到一个需求是,打印网页时, ...

随机推荐

  1. delphi xe5 android 开发数据访问手机端(一)

    上几片文章我们把供手机端调用的web服务完成,接下来实现手机端调用webservices获取数据 1.新建firemonkey mobile application 2.选择blank applica ...

  2. 第 4 章 多例模式【Multition Pattern】

    以下内容出自:24种设计模式介绍与6大设计原则 这种情况有没有?有!大点声,有没有? 有!,是,确实有,就出现在明朝,那三国期间的算不算,不算,各自称帝,各有各的地盘,国号不同.大家还记得那首诗< ...

  3. python中的单下划线和双下划线意义和作用

    Python中并没有真正意义上的“私有”,类的属性的的可见性取决于属性的名字(这里的属性包括了函数).例如,以单下划线开头的属性(例如_spam),应被当成API中非公有的部分(但是注意,它们仍然可以 ...

  4. 【技术贴】解决vss中提交pdf下载打开空白乱码

    vss客户端需要安装一个Vss2005的补丁程序,而且之前上传的pdf文件重新删掉,再次上传进Vss中,再下载打卡就ok了. 补丁名称vs80-kb943847-x86-intl.exe 别人的csd ...

  5. 【BZOJ1901】 Zju2112 Dynamic Rankings(树套树)

    [题意] 给定一个含有n个数的序列a[1],a[2],a[3]--a[n], 程序必须回答这样的询问:对于给定的i,j,k,在a[i],a[i+1],a[i+2]--a[j]中第k小的数是多少(1≤k ...

  6. 【BZOJ 3476】 线段树===

    59  懒惰的奶牛贝西所在的牧场,散落着 N 堆牧草,其中第 i 堆牧草在 ( Xi,Yi ) 的位置,数量有 Ai 个单位.贝西从家移动到某一堆牧草的时候,只能沿坐标轴朝正北.正东.正西.正南这四个 ...

  7. 详解如何用AD 生成Gerber文件

    以上gerber文件就出完了;  下面步骤是:进行导出" 钻孔文件 ". 以上钻孔文件就出完了;  到此就全部完成输出了. 下面的操作,也可以不用导的 .下面步骤是:进行导出&qu ...

  8. 最简单的CRC32源码---逐BIT法

    CRC其实也就那么回事,却在网上被传得神乎其神.单纯从使用角度来说,只需要搞明白模二除法,再理解一些偷懒优化的技巧,就能写出自己的CRC校验程序. 下面的代码完全是模拟手算过程的,效率是最低的,发出来 ...

  9. Java 多维数组 按某列 排序

        public MetaCell[][] getByColumn(final int columnIndex, int decisionIndex) {//[注意]final咯          ...

  10. Yii处理流程

    Yii的应用程序处理流程 用户访问URL http://www.example.com/blog/index.php?r=site/contact 1.入口脚本被网站服务器执行以处理此请求. 2.一个 ...