1添加开发所需的jar包,包括:
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2.5.jar
commons-logging-1.1.1.jar
freemarker-2.3.16.jar
javassist-3.11.0.GA.jar
ognl-3.0.1.jar
struts2-core-2.2.3.jar
xwork-core-2.2.3.jar
支持struts2开放至少需要九个jar包;
2,在web.xml中配置核心过滤器,在struts2中,struts框架是通过Filter启动的,在StrutsPrepareAndExecuteFilter的init()方法
中将会读取类路径下默认的配置文件struts.xml完成初始化操作:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3,XxxAction,必须包含execute方法:
public class LoginAction {
private String uname;//使用struts2自动获取表单元素的值(必须与表单元素的名称一致,并且有getter和setter方法)
private String upass;
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getUpass() {
return upass;
}
public void setUpass(String upass) {
this.upass = upass;
}
public String execute() throws Exception{
if("admin".equals(uname)&&"admin".equals(upass)){
return "loginOk";//逻辑名称
}
return "loginFail";
}
}
4.编写页面;
5.在src下新建struts.xml,truts2默认的配置文件为struts.xml , StrutsPrepareAndExecuteFilter
过滤器在初始化时将会在WEB-INF/classes下寻找该文件并在struts.xml中配置action和result
<package name="struts2Demo" extends="struts-default">(必须继承struts-default)
<!--name的值必须和表单元素提交的url去除后缀一致,class="action的全类名"-->
<action name="login" class="com.xasxt.action.LoginAction">
<!--name逻辑名称(与action中execute方法的返回值一致),/success.jsp:物理路径-->
<result name="loginOk">/success.jsp</result>
<result name="loginFail">/fail.jsp</result>
</action>
</package>