網(wǎng)絡(luò)上關(guān)于Struts2方面資料不少,之所以再重復(fù)一些關(guān)于Struts2的知識(shí),只是因?yàn)楸救苏趯W(xué)習(xí)Struts2,而且在學(xué)習(xí)的途中也遇見(jiàn)了不少
的問(wèn)題,由于沒(méi)有學(xué)過(guò)Struts2以前的版本,學(xué)習(xí)途中也是比較的痛苦,在此僅想記錄下我的學(xué)習(xí)歷程。
如果你對(duì)這個(gè)方面有深入研究,懇請(qǐng)你的指點(diǎn);如果你也是初學(xué)者,希望這系列的博文對(duì)你有所幫助。
個(gè)人感覺(jué)autocompleter用處比較明顯,就是一個(gè)智能感知。更體現(xiàn)了struts2的靈活性。看實(shí)例:
autocompletertag.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<s:head theme="ajax" />
<body>
<s:autocompleter name="test" list="{'湖南','上海','北京','廣東'}"
autoComplete="false" />
<s:autocompleter list="provice" name="provice" />
</body>
</html>
在src目錄的com.kalman03.action包下建一個(gè)AutocompleterAction.java:
package com.kalman03.action;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
/**
* @FileName AutocompleterAction.java
*
* @Author kalman03
*
*/
public class AutocompleterAction extends ActionSupport {
private List provice;
@Override
public String execute() throws Exception {
List arl = new ArrayList();
arl.add("湖南");
arl.add("湖北");
arl.add("上海");
arl.add("北京");
arl.add("天津");
arl.add("廣東");
this.setProvice(arl);
return SUCCESS;
}
public List getProvice() {
return this.provice;
}
public void setProvice(List provice) {
this.provice = provice;
}
}
在struts.xml內(nèi)增加代碼:
<action name="autocompletertag" class="com.kalman03.action.AutocompleterAction">
<result>/autocompletertag.jsp</result>
</action>
OK,在瀏覽器輸入http://localhost:8080/myweb/autocompletertag.action,可以看到效果:



注意:<s:head theme="ajax" />我們?cè)贘SP里面增加一句這樣的話,關(guān)于struts2標(biāo)簽的主題日后講解,這里順便提下,當(dāng)theme為simple時(shí),那么autocompleter標(biāo)簽相當(dāng)于HTML中的
ComboBox,當(dāng)且theme為ajax時(shí),list才能從action里面獲得動(dòng)態(tài)的值。