`

使用通配符的来调用action 中的不同方法

阅读更多

struts.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>

    <!-- 该属性设置struts2是否支持动态方法调用,该值默认为:true,如果要关闭动态方法调用,则可以设置为:false -->
    <constant name="struts.enable.DynamicMethodInvocation"
        value="false" />

    <package name="taink" namespace="/control/employee"
        extends="struts-default">
        <action name="list_*" method="{1}"
            class="org.taink.struts.action.HelloWorldAction">
            <result name="success">/WEB-INF/page/message.jsp</result>
        </action>
    </package>
</struts>

 

action.java

------------------------------------------------------------------------------------------------------------------------------

 

package org.taink.struts.action;

// struts2 采用无入侵设计(即不依赖其它框架,类,jar的支持)
public class HelloWorldAction {
    private String message;

    public String getMessage() {
        return message;
    }

    public String addUI() {
        message = "addUI";
        return "success";
    }

    public String execute() {
        message = "execute";
        return "success";
    }

}

 

message.jsp

---------------------------------------------

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    <title>message page</title>
  </head>
  <body>
         value:${message}
  </body>
</html>

 

 

分享到:
评论

相关推荐

    struts2利用通配符调用同一个Action里面不同的方法

    例如,你可以设置一个`execute`方法来处理默认请求,而其他方法则通过通配符调用。 在实际开发中,我们还可以结合Struts2的拦截器(Interceptor)进行更复杂的逻辑处理,如权限验证、日志记录等。拦截器可以在...

    struts2动态调用之通配符

    Struts2会根据URL中的部分替换通配符,并尝试调用Action类中的方法。如果找不到与之匹配的方法,Struts2将会回退到默认的执行方法(通常是`execute`)。 为了更高效地利用这一特性,我们需要遵循以下几点: 1. 方法...

    struts2笔记之动态调用Action指定方法及默认Action

    在 Struts2 中,我们可以使用不同的方式来动态调用 Action 的指定方法,例如使用表单提交、struts.xml 配置、通配符方法等方式。此外,我们还可以配置默认的 Action 和全局结果,以便更好地管理我们的应用程序。

    Struts2动态方法调用

    例如,我们可以定义一个Action,然后使用不同的参数值来调用不同的Action方法。这样可以减少Action的数量,简化配置,提高代码复用。 3. **通配符**: Struts2的通配符功能是动态方法调用的关键。在配置文件中,...

    Struts2_Action学习笔记、通配符{1},{2}

    例如,在`UserAction`类中,可以通过不同的URL参数来调用不同的方法: ```java public class UserAction extends ActionSupport { public String add() { return SUCCESS; } public String delete() { return...

    struts中动态方法调用使用通配符

    动态方法调用(Dynamic Method Invocation,DMI)是Struts框架中的一个重要特性,允许开发者根据不同的请求调用Action类的不同方法,实现灵活的业务逻辑处理。在本例中,我们讨论的是如何结合通配符来更高效地使用...

    struts2.5+框架使用通配符与动态方法常见问题小结

    在上面的示例中,我们使用动态方法来调用Action类中的方法“query”。动态方法的使用需要将其属性改为true,如下所示: 三、常见问题 在使用通配符和动态方法时,经常会看到一些错误提示,例如: * Struts ...

    struts2通配符示例代码

    在Struts2的配置中,通配符(Wildcard)的使用是一个非常实用的功能,它使得URL映射更加灵活,减少了重复配置。下面将详细解释Struts2通配符的用法,并结合示例代码进行解析。 1. **Struts2通配符概述** Struts2的...

    struts2通配符的使用详解

    通过以上示例可以看出,在Struts2框架中使用通配符可以显著减少配置文件的工作量,使得配置更为简洁。但同时也要注意到,为了能够有效利用通配符,需要事先制定一套明确的命名规则。此外,虽然通配符可以简化配置,...

    Struts2通配符

    例如,当用户访问`addCrud.action`时,Struts2将调用`example.Crud`类中的`add()`方法。 ###### 4.2.2 使用特定字符作为分隔符 ```xml &lt;action name="crud_*" class="example.Crud" method="{1}"&gt; &lt;/action&gt; ``` ...

    struts2 通配符配置

    这篇博客可能详细解释了如何在Struts2框架中使用通配符配置来简化Action配置。 通配符配置的核心思想是通过使用特殊字符(如*)来匹配多个Action名称。例如,如果你有一个处理所有用户操作的通用Action,你可以使用...

    struts2一个action处理多个请求 struts2实例

    但通过`method`属性,我们可以指定特定的请求调用Action类中的不同方法。例如: ```xml &lt;action name="myAction" class="com.example.MyAction"&gt; &lt;result name="saveSuccess"&gt;/success.jsp ...

    struts2 action的三种访问方式

    通配符方式允许我们在配置中使用通配符来匹配多个Action。这提高了灵活性,减少了配置量。例如: ```xml &lt;action name="user_*" class="com.example.UserAction"&gt; &lt;result type="dispatcher"&gt;/${actionName}....

    详解Struts2动态方法调用

    在上面的配置中,我们使用通配符 `*` 来指定方法名,例如 `HelloWorld_add`。这样,当我们访问 `HelloWorld_add.action` 时,Struts2 将调用 `HelloWorldAction` 中的 `add` 方法。 Java 类实现 对应的 Java 类...

    传智播客struts2.1源代码_动态方法

    然而,动态方法调用允许开发者不通过硬编码的方式来调用Action类的方法。这种机制使得Action类的设计更加灵活,减少了因为URL改变而修改代码的情况。在Struts2.1中,动态方法调用通过配置`struts.enable.Dynamic...

    Struts2配置文件中使用通配符的方法(三种形式)

    总结来说,Struts2配置文件中的通配符使用极大地提高了配置的灵活性,减少了重复代码,简化了Action和方法的映射。通过不同的形式,我们可以方便地处理Action之间的共性和差异性,同时也能根据Action的执行结果动态...

    Struts2--3.Action及相关-1

    这可以通过在配置文件中使用`method`属性来实现,增强了代码的可读性和可维护性。 `Struts2_0600_ActionWildcard`则介绍了Action路径中的通配符使用。通配符允许我们创建更通用的Action映射,减少重复配置,例如,...

    Struts2 处理多个请求

    动态方法调用是Struts2提供的一种机制,允许用户在表单提交时指定一个Action实例下的特定方法来处理请求。在HTML表单中,`action`属性不再是直接指向Action类的名字,而是以`ActionName!methodName.action`的形式...

Global site tag (gtag.js) - Google Analytics