1.导入Struts2相关的jar包。
2.配置web.xml.标红部分。核心拦截器,其中
<url-pattern>*.action</url-pattern>
的值可以根据自己的需求配置。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<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>*.action</url-pattern>
</filter-mapping>
<welcome-file-list><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file> </welcome-file-list></web-app>
3.创建struts.xml
<!--name="login"package中的name类似于 java中的包名,作为识别区分使用namespace类似name-->
<!-- extends 为必要选项,只有继承struts-default 才能起到Struts 2的核心拦截作用-->
<package name="login" namespace="/" extends="struts-default">
<!--action name="login" name是指页面中拦截的action 后面是对应的参数,特别注意:区分大小写-->
<!--class是指页面中拦截的action 后,要转向的类,类似于servlet ,-->
<!--method 是指具体要调用的方法,如果不指定。默认调用execute()方法 -->
<action name="login" class="com.zhangd.mainAction.LoginAction" method="Login">
<!--result name对应method返回的结果,默认为success,属性还有其它的规定重定向一类的属性,在基础稳固之后,可做研究-->
<result name="error">/Main/error.jsp</result>
<result name="success">/Main/welcome.jsp</result>
</action>
</package>
前面的基础配置不做过多的解释,直接根据需求复制,入门主要讲解请求拦截,结果分发
4.Action方法。
public class LoginAction extends ActionSupport implements Serializable {
// public String Login() {return "success"}若struts.xml配置文件中不定义mothod默认为此方法。
//一个action可以定义多个请求的分发,不过最好不好这样做。
public String Login() {//若truts.xml配置文件中做了定义,就是使用定义的方法。一个但注意,一定是一个无参的public String方法。
if(userDao.findPeople(username, userpass))
return SUCCESS;
else
return ERROR;
}
}
不知道如何上传文件,这里源码就不传了,网上有很多的例子,可以参考。。。