网络上关于Struts2方面资料不少,之所以再重复一些关于Struts2的知识,只是因为本人正在学习Struts2,而且在学习的途中也遇见了不少
的问题,由于没有学过Struts2以前的版本,学习途中也是比较的痛苦,在此仅想记录下我的学习历程。
如果你对这个方面有深入研究,恳请你的指点;如果你也是初学者,希望这系列的博文对你有所帮助。
个人感觉autocompleter用处比较明显,就是一个智能感知。更体现了struts2的灵活性。看实例:
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包下建一个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内增加代码:
<action name="autocompletertag" class="com.kalman03.action.AutocompleterAction">
<result>/autocompletertag.jsp</result>
</action>
OK,在浏览器输入http://localhost:8080/myweb/autocompletertag.action,可以看到效果:
注意:<s:head theme="ajax" />我们在JSP里面增加一句这样的话,关于struts2标签的主题日后讲解,这里顺便提下,当theme为simple时,那么autocompleter标签相当于HTML中的
ComboBox,当且theme为ajax时,list才能从action里面获得动态的值。