Structs复习 Action

引入jar包

web.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">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
  <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>/*</url-pattern>
    </filter-mapping>
</web-app>

Structs.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <!-- 
    <constant name="struts.enable.DynamicMethodInvocation" value="false" />
    

    <include file="example.xml"/>



    <package name="default" namespace="/" extends="struts-default">
        <default-action-ref name="index" />
        <action name="index">
            <result type="redirectAction">
                <param name="actionName">HelloWorld</param>
                <param name="namespace">/example</param>
            </result>
        </action>
    </package>
     -->
    <!-- Add packages here -->
    <constant name="struts.devMode" value="true" />
    <package name="front" extends="struts-default" namespace="/">
        <action name="index" class="com.bjsxt.struts2.front.action.indexAction4">
            <result name="success">/ActionIntroduction.jsp</result>
        </action>
    </package>

</struts>

当输入指定的命名空间和name后 他会返回到 action 指定的class里面找到执行excute方法 找到她的返回值

根据result的name比较返回值确定返回类型

常用定义的方法有三种 主要用第三种 因为其已经为我们定义了很多方法

indexAction1

package com.bjsxt.struts2.front.action;

public class IndexAction1 {
    public String execute() {
        return "success";
    }
}

indexAction2

package com.bjsxt.struts2.front.action;

import com.opensymphony.xwork2.Action;

public class IndexAction2 implements Action {
    @Override
    public String execute() {
        return "success";
    }
}

indexAction3

package com.bjsxt.struts2.front.action;

import com.opensymphony.xwork2.ActionSupport;

public class IndexAction3 extends ActionSupport {
    
    @Override
    public String execute() {
        return "success";
    }
}

输入:

http://localhost:6666//Struts2_0300_Action/index

原文地址:https://www.cnblogs.com/frankzone/p/9465110.html