首先我们需要把struts2的工具包引入到项目中
准备需要用到到的东西
①、web.xml过滤是否是struts的请求如果是就会给struts.xml
②、struts.xml通过请求的名字来找请求的action还有名字
③、处理浏览器发出的请求再次回到struts中返回结果
代码如下:
TestAction.java
public class TeatAction extends ActionSupport{
//实例实体类对象,提供get、set方法struts自动收集请求数据
private User u=new User();
public User getU() {
return u;
}
public void setU(User u) {
this.u = u;
}
//处理请求的方法
public String test(){
//数据库操作或其他数据操作
System.out.println("账号是:"+u.getName()+"\t密码:"+u.getPwd());
//返回结果给struts.xml
return SUCCESS;
}
}
struts.xml
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!--
extends:必须继承这个xml
-->
<package name="default" namespace="/" extends="struts-default">
<!--
name:请求的名字的类名
class:action的路径
method:方法的名字
-->
<action name="testAction_*" class="com.xb.action.TeatAction" method="{1}">
<result>index.jsp</result>
</action>
</package>
</struts>
web.xml
<!-- struts的过滤器 -->
<filter>
<filter-name>struts2</filter-name>
<!-- org.apache.struts2.dispatcher.ng.filter这个文件下的StrutsPrepareAndExecuteFilter -->
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<!-- 表示过滤以.action结尾的所有请求 -->
<url-pattern>*.action</url-pattern>
</filter-mapping>
Login.jsp
<table>
<!-- 注意form的action,表单的name值 -->
<form method="post" action="testAction_test.action">
<tr>
<td>用户名:</td>
<td><input type="text" name="u.name"></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="u.pwd"></td>
</tr>
<tr>
<td><input type="submit"></td>
</tr>
</form>
</table>
步骤和过程:浏览器发起请求---------web.xml过滤请求----------struts.xml判断action和方法-----------action处理请求并且返回结果----------struts.xml处理结果