struts2的s:param标签主要有两个属性name与value,若想在value属性中输入直接量,则可以这样写:<s:param name="some"value="%{'user'}"/>,也可以这样写:<s:paramname="some">user</s:param>。但如果直接赋值,这个值不是由Action动态生成的,而是自己指定的一个字符串,则只能用后者。例:
一个分页程序中的jsp片段:
<ahref="<s:urlaction="showAllGoods.action">
<s:param name="currentPage"value="currentPage" />
<s:paramname="pagerMethod">first</s:param>
</s:url>">首页</a>
<ahref="<s:urlaction="showAllGoods.action">
<s:param name="currentPage"value="currentPage" />
<s:paramname="pagerMethod">previous</s:param>
</s:url>">上一页</a>
<ahref="<s:urlaction="showAllGoods.action">
<s:param name="currentPage"value="currentPage" />
<s:param name="pagerMethod">next</s:param>
</s:url>">下一页</a>
<ahref="<s:urlaction="showAllGoods.action">
<s:param name="currentPage"value="currentPage" />
<s:paramname="pagerMethod">last</s:param>
</s:url>">尾页</a>
请注意其中的参数传递,分别用了前面介绍的俩种方式:<s:param name="currentPage"value="currentPage" /> 和 <s:paramname="pagerMethod">last</s:param>。
其中第一种方式中的currentPage是由Action动态生成的。而第二种方式中的last字符串是我自己页面指定的,如果这里也采用第一种方式的话,就不能传进这个参数。