如何用struts中的url编码参数?

时间:2009-09-07 07:52:40

标签: java struts taglib

页面上显示书籍列表。当用户单击某本书时,将打开其详细信息页面。现在的问题是我需要用详细信息页面url对每本书的id进行编码。

详细信息页面的链接是/loadDetailForm.do。如果图书的id = 23,则该链接应显示为/loadDetailForm.do?id=23。

我在这里粘贴代码:

<logic:notEmpty name="BrowseForm" property="books">
                <logic:iterate id="book" property="books" name="BrowseForm" type="com.nms.bks.app1.domain.Book">
                        <p><html:link action="/loadDetailForm" styleClass="btn_blue"><bean:write name="book" property="title"/></html:link></p>
                </logic:iterate>
            </logic:notEmpty>

由于

1 个答案:

答案 0 :(得分:2)

您可以指定struts标记将附加到网址的参数映射。

请参阅http://struts.apache.org/1.2.x/userGuide/struts-html.html#link

查看paramIdparamNameparamProperty属性。

<html:link action="/loadDetailForm" 
       styleClass="btn_blue" 
       paramId="id" 
       paramName="book" 
       paramProperty="id">
          <bean:write name="book" property="title"/>
</html:link>

另一种方法是使用JSTL标记库

<c:url value="expression" context="expression"
    var="name" scope="scope">
  <c:param name="param1" value="${thing.id}"/>
  ...
</c:url>

http://www.ibm.com/developerworks/java/library/j-jstl0318/