<html:link>s標簽
轉自:http://www.lupaworld.com/42237/viewspace_17781.html
1.1. 頁面跳轉
可以使用href、page、action三個屬性實現struts視圖層組件的跳轉,三個屬性的作用及區別為:① href使用該域名下的相對路徑,路徑前不需要加“/”,或鏈接至以http開頭其它域名,href="index.jsp"、href="http: //www.baidu.com";② page使用該域名下的絕對路徑,路徑前需要加“/”;③ action使用該域名下的絕對路徑,路徑前需要加“/”,與page的區別是可以省略.do;為了生成“http://localhost: 8080/941ok/chat/questFriendIndex.do”這樣的鏈接,分別使用href、page、action的實現如下:
href="questFriendIndex.do";
page="/chat/questFriendIndex.do";
action="/chat/questFriendIndex"、action="/chat/questFriendIndex.do";
1.2. 參數傳遞
① 傳遞靜態參數,直接寫在URL里,例如:href="questFriendIndex.do?username=1&password=1";
② 傳遞單個動態參數,通過paramId,paramName和paramProperty屬性傳遞Bean里的單個值。paramId屬性告訴jsp編譯引擎要傳送的參數名稱是什么,“?”號后面,“=”號前面的內容;paramName屬性和paramProperty屬性告訴編譯引擎使用哪個Bean 的哪個屬性值,構造“=”后面的內容。如果beanName的property beanProperty的值為beanPropertyValue,那么<html:link page="chat/questFriendIndex.do" paramId="param_name" paramName="beanName" paramProperty="beanProperty">對應的url是http://localhost: 8080/941ok/chat/questFriendIndex.do?param_name=beanPropertyValue;
③ 傳遞多個動態參數,通過name屬性傳遞在request對象里設置的Map類型的對象里的多個參數;假設如果你定義下面的一個map:
Map mapName=new HashMap();
mapName.put("paramValue1","value1");
mapName.put("paramValue2","value2");
request.setAttribute("mapName",mapName);
在jsp頁面有下面的一個鏈接:
<html:link action="/chat/questFriendIndex" name="mapName">
對以的鏈接是:
http://localhost:8080/941ok/chat/questFriendIndex.do?paramValue1=value1¶mValue2=value2
1.3. 示例應用結構
{$tomcat_home\webapps}
|__941ok
|__WEB-INF
|__chat
|__index.jsp
|__questFriendIndex.do