Java进阶知识05 Struts2的基础配置详解

java

1、Struts2的原理/流程步骤  

简单的理解:
    1、客户端发送一个request请求,Tomcat服务器接收到的请求经过web.xml配置文件去处理,进入struts2的核心过滤器,从而进入struts2的struts.xml配置文件。
    2、根据客户端的请求action名称去寻找struts.xml配置文件中对应的action名称,从而去调用action包下对应的action类,经过一系列的逻辑处理后,将处理的结果返回给struts2。
    3、最后struts2将结果返回给客户端并显示出操作后的结果。

2、基础配置(实例解析)  

web.xml 配置文件

 1 <?xml version="1.0" encoding="UTF-8"?>

2 <web-app version="2.5"

3 xmlns="http://java.sun.com/xml/ns/javaee"

4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

5 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

6 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

7 <display-name></display-name>

8 <welcome-file-list>

9 <welcome-file>index.jsp</welcome-file>

10 </welcome-file-list>

11

12 <!-- struts2过滤器 -->

13 <filter>

14 <filter-name>struts2</filter-name>

15 <filter-class>

16 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

17 </filter-class>

18 </filter>

19 <filter-mapping>

20 <filter-name>struts2</filter-name>

21 <url-pattern>/*</url-pattern>

22 </filter-mapping>

23

24 </web-app>

struts2.xml 配置文件(创建在src目录下)

 1 <?xml version="1.0" encoding="UTF-8" ?>

2 <!DOCTYPE struts PUBLIC

3 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"

4 "http://struts.apache.org/dtds/struts-2.3.dtd">

5

6 <struts>

7 <package name="loginDemo" namespace="/" extends="struts-default" >

8 <action name="login" class="com.shore.action.LoginAction" >

9 <result name="success">success.jsp</result>

10 <result name="error">error.jsp</result>

11 </action>

12 </package>

13 </struts>

LoginAction 类

 1 package com.shore.action;

2

3 import com.opensymphony.xwork2.Action;

4

5

6

7 /**

8 * @author DSHORE/2019-9-10

9 *

10 */

11 public class LoginAction implements Action {

12

13 private String username;

14 private String password;

15

16 public void setUsername(String username) {

17 this.username = username;

18 }

19 public void setPassword(String password) {

20 this.password = password;

21 }

22

23 public String execute() throws Exception {

24 System.out.println("用户名:"+username+" -密码:"+password);

25 if (username.equals("zhangsan") && password.equals("123456")) {

26 return SUCCESS;

27 }else {

28 return ERROR;

29 }

30 }

31 }

index.jsp 页面

 1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

2 <%

3 String path = request.getContextPath();

4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

5 %>

6

7 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

8 <html>

9 <head>

10 <base href="<%=basePath%>">

11

12 <title>My JSP 'index.jsp' starting page</title>

13 <meta http-equiv="pragma" content="no-cache">

14 <meta http-equiv="cache-control" content="no-cache">

15 <meta http-equiv="expires" content="0">

16 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

17 <meta http-equiv="description" content="This is my page">

18 <!--

19 <link rel="stylesheet" type="text/css" href="styles.css">

20 -->

21 </head>

22

23 <body>

24 <form action="login.action" method="post" name="loginForm">

25 用户名:<input type="text" name="username" /><br/>

26 密 码:<input type="password" name="password" /><br/>

27 <input type="submit" name="sbm" value="提交" />

28 </form>

29 </body>

30 </html>

运行结果图:

   

原创作者:DSHORE

作者主页:http://www.cnblogs.com/dshore123/

原文出自:https://www.cnblogs.com/dshore123/p/11502389.html

欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!)

以上是 Java进阶知识05 Struts2的基础配置详解 的全部内容, 来源链接: utcz.com/z/390549.html

回到顶部