• Strtus2标签<s:url>


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

     

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

     

    <s:url>标签一般和超链接 <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地址发送请求参数

     

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



     

    例子:

          

    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属性


            

    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属性

       

    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属性


           

    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属性 


           

    1. <!--指定命名空间后,生成的url会使用相对路径,具体的看我的结果-->   
    2.        <s:url var="url" action="mainPage" namespace="user">   
    3.            <s:param name="id" value="123"/>   
    4.        </s:url>   
    5.    结果如下   
    6. lt;a href="user/mainPage?id=123">url</a>  
  • 相关阅读:
    今晚的比赛(2011.12.4)
    js中prototype,constructor的理解
    laravel中empty(),is_null() 以及isEmpty()
    mysql查询语句and,or
    jquery简易tab切换
    Qt 的QcomboBox的简单使用
    折半查找
    C++强制类型转换(转)
    二叉树学习
    c++的重载,覆盖与隐藏
  • 原文地址:https://www.cnblogs.com/htys/p/3243157.html
Copyright © 2020-2023  润新知