一、新建页面register.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<form action="/day27/register.do" method="post">
<table>
<caption>
用户登录(struts1版)
</caption>
<tr>
<th>
用户名
</th>
<td>
<input type="text" name="username" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="提交" />
</td>
</tr>
</table>
</form>
</body>
</html>
二、引入struct1开发包,
三、配置WEB-INF文件夹下的web.xml文件(包括控制器名称,控制器所在位置,通过参数去访问struts-config.xml),如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<!-- 控制器名称 -->
<servlet-name>action</servlet-name>
<!-- 控制器类所在位置-->
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<!-- 配置名称 -->
<param-name>config</param-name>
<!-- 配置内容 -->
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup><!-- 应用加载就执行 -->
</servlet>
<servlet-mapping>
<!-- 控制器名称 -->
<servlet-name>action</servlet-name>
<!-- 作用范围,所有以.do结尾的action-->
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
四、在WEB-INF文件夹下新建struts-config.xml文件(也可直接拷贝strut1例子中的配置文件,删除不需要的内容),当有action提交时,去web.xml中找相关信息,根据配置,会去访问struts-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
"http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<action-mappings>
<!-- paht表示servlet控制的action, type表示action所转向的类-->
<action path="/register" type="cn.itcast.web.struts1.action.RegisterAction"></action>
</action-mappings>
</struts-config>
五、通过struts-config.xml,会去找RegisterAction类,此类需要extends 类Action,并重载其方法execute
package cn.itcast.web.struts1.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
//分控制器
public class RegisterAction extends Action{
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
request.setCharacterEncoding("utf-8");
String username = request.getParameter("username");
System.out.println(username);
return null;
}
}
此时就能在监视器中捕捉到我们提交的表单