开发步骤:
1.导入jar包,配置相关文件.
可以先配置web.xml文件,如下:
1
<?
xmlversion="1.0"encoding="UTF-8"
?>
2
<
web-app
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xmlns
="http://java.sun.com/xml/ns/javaee"
xmlns:web
="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation
="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id
="WebApp_ID"
version
="2.5"
>
3
<
servlet
>
4
<
servlet-name
>actionServlet
</
servlet-name
>
5
<
servlet-class
>org.apache.struts.action.ActionServlet
</
servlet-class
>
6
<
init-param
>
7
<
param-name
>config
</
param-name
>
8
<
param-value
>/WEB-INF/struts-config.xml
</
param-value
>
9
</
init-param
>
10
<
load-on-startup
>0
</
load-on-startup
>
11
</
servlet
>
12
<
servlet-mapping
>
13
<
servlet-name
>actionServlet
</
servlet-name
>
14
<
url-pattern
>*.do
</
url-pattern
>
15
</
servlet-mapping
>
16
</
web-app
>

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

在WEB-INF下建立一个struts-config.xml文件,文件内容暂且如下:
1
<?
xmlversion="1.0"encoding="gbk"
?>
2
3
<!
DOCTYPEstruts-configPUBLIC
4
"-//ApacheSoftwareFoundation//DTDStrutsConfiguration1.3//EN"
5
"http://struts.apache.org/dtds/struts-config_1_3.dtd"
>
6
<
struts-config
>
7
</
struts-config
>

2

3

4

5

6

7

2.书写jsp页面:login.jsp,success.jsp,error.jsp
login.jsp:
1
<
%@page
language
="java"
contentType
="text/html;charset=ISO-8859-1"
2
pageEncoding
="ISO-8859-1"
%
>
3
<!
DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"
>
4
<
html
>
5
<
head
>
6
<
meta
http-equiv
="Content-Type"
content
="text/html;charset=ISO-8859-1"
>
7
<
title
>Inserttitlehere
</
title
>
8
</
head
>
9
<
body
>
10
<
form
action
="login.do"
method
="post"
>
11
username:
<
input
type
="text"
name
="username"
/>
<
br
/>
12
password:
<
input
type
="password"
name
="password"
/>
<
br
/>
13
<
input
type
="submit"
value
="submit"
/>
14
</
form
>
15
</
body
>
16
</
html
>

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

success.jsp:
1
<
body
>
2
<
h1
>loginsuccess!
</
h1
>
3
<
h2
>username:${requestScope.username}
</
h2
>
4
<
h2
>password:${requestScope.password}
</
h2
>
5
</
body
>

2

3

4

5

error.jsp:
1
<
body
>
2
<
h1
><
font
color
="red"
>loginfailed!
</
font
></
h1
>
3
</
body
>

2

3

3.编写一个ActionForm的类,用来暂存请求传给服务端的数据。
1
packageper.struts1.web;
2
importorg.apache.struts.action.ActionForm;
3
public
classLoginActionForm
extendsActionForm
{
4
privateStringusername;
5
privateStringpassword;
6
publicStringgetUsername(){
7
returnusername;
8
}
9
publicvoidsetUsername(Stringusername){
10
System.out.println(username);
11
this.username=username;
12
}
13
publicStringgetPassword(){
14
returnpassword;
15
}
16
publicvoidsetPassword(Stringpassword){
17
System.out.println(password);
18
this.password=password;
19
}
20
}
21

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

4.编写一个Action类,并覆盖其execute()方法
1
packageper.struts1.web;
2
importjavax.servlet.http.HttpServletRequest;
3
importjavax.servlet.http.HttpServletResponse;
4
importorg.apache.struts.action.Action;
5
importorg.apache.struts.action.ActionForm;
6
importorg.apache.struts.action.ActionForward;
7
importorg.apache.struts.action.ActionMapping;
8
public
classLoginAction
extendsAction
{
9
@Override
10
publicActionForwardexecute(ActionMappingmapping,ActionFormform,
11
HttpServletRequestrequest,HttpServletResponseresponse)
12
throwsException{
13
LoginActionFormlaf=(LoginActionForm)form;
14
Stringusername=laf.getUsername();
15
Stringpassword=laf.getPassword();
16
System.out.println(username+":"+password);
17
if("jone".equals(username)&&"jone".equals(password)){
18
request.setAttribute("username",username);
19
request.setAttribute("password",password);
20
returnmapping.findForward("success");
21
}else{
22
returnmapping.findForward("error");
23
}
24
}
25
}
26

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

5.对ActionForm类及Action类在struts-config.xml文件中进行配置
1
<?
xmlversion="1.0"encoding="gbk"
?>
2
<!
DOCTYPEstruts-configPUBLIC
3
"-//ApacheSoftwareFoundation//DTDStrutsConfiguration1.3//EN"
4
"http://struts.apache.org/dtds/struts-config_1_3.dtd"
>
5
<
struts-config
>
6
<
form-beans
>
7
<
form-bean
name
="loginForm"
type
="per.struts1.web.LoginActionForm"
>
8
<!--
为暂存数据的ActionForm类进行配置,name是随意取得,type为类的全限定名
-->
9
</
form-bean
>
10
</
form-beans
>
11
12
<
action-mappings
>
13
<
action
path
="/login"
type
="per.struts1.web.LoginAction"
name
="loginForm"
scope
="request"
>
14
<!--
为Action类进行配置,-条action标签对应一个ActionMapping类,path为访问路径,不含.do,
15
type为类的全限定名,name指的是上面已经配置的ActionForm的name值,
16
scope为所创建的ActionForm指明一个作用域。
17
-->
18
<
forward
name
="success"
path
="/success.jsp"
></
forward
>
19
<!--
forward标签是用于页面跳转的,path即为跳转路径,而name起一个标识作用
-->
20
<
forward
name
="error"
path
="/error.jsp"
></
forward
>
21
</
action
>
22
</
action-mappings
>
23
</
struts-config
>
24

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

至此可以进行运行测试了。只有当username与password都为"jone"的时候,才会跳到success.jsp页面。