`

struts2动态方法(dynamic)调用的两种方式

阅读更多
动态方法调用的两种方式
1 . 使用!+方法名调用指定方法
   假设访问某一个action的url为 http://localhost:8080/hellword/dept/list.action
   再假设在action中有个login()方法
   要调用login方法的url为 http://localhost:8080/hellword/dept/list!login.action
   如果要禁止这种访问方式,在struts.xml中可以配置参数
 
 <constant name="struts.enable.DynamicMethodInvocation" value="false"/>
   此方式在api中已经过时,不推介使用这种方式
2 . 使用通配符定义action
  
 package name="employee" namespace="/control/employee" extends="struts-default">
		<action name="list_*" class="cn.itcast.action.HelloWorldAction" method="{1}">
			<result name="success">/WEB-INF/page/message.jsp</result>
		</action>
	</package>  
要访问login方法的url为 http://localhost:8080/hellword/dept/lis_login.action
分享到:
评论

相关推荐

    struts2的API耦合与动态方法调用

    本文将重点讨论Struts2中的API耦合和动态方法调用,这两种特性对于理解框架的工作原理和提高代码的灵活性至关重要。 首先,我们来看看Struts2 API耦合的几种方式: 1. **ActionContext类**:ActionContext是Struts...

    Struts2中直接和间接访问ServletAPI以及动态方法调用之感叹号

    在Struts2框架中,直接和间接访问Servlet API以及动态方法调用是两个关键概念,它们对理解和优化应用性能至关重要。 首先,让我们深入理解直接访问Servlet API。在传统的MVC模式中,Servlet扮演着控制器的角色,...

    Struts2登陆+输入验证+动态调用实例

    Struts2提供两种主要的输入验证方式:客户端验证和服务器端验证。 1. 客户端验证:通过JavaScript在用户提交表单前检查输入,可以提供实时反馈,但安全性较低,因为JavaScript可以被禁用或篡改。 2. 服务器端验证:...

    struts2的学习笔记+测试源代码

    这两种方式都利用了Struts2的拦截器(Interceptor)机制来解析URL并决定调用哪个Action方法。在实际开发中,动态方法调用能帮助我们实现更加灵活的URL设计,但同时也需要注意安全性问题,因为它可能导致意外的方法被...

    Struts2+技术内幕——深入解析Struts2架构设计与实现原理

    同时,Struts2的动态方法调用(Dynamic Method Invocation,DMI)功能允许通过URL直接调用Action的方法,增强了路由的可配置性。 Struts2的配置文件是其另一大特色。XML配置文件可以定义Action、结果类型、拦截器栈...

    Struts2 S2-033漏洞分析1

    在修复 S2-033 漏洞时,我们可以采取两种方法:一是关闭动态方法调用,在 struts.xml 中的 `”struts.enable.DynamicMethodInvocation” value=”true” /&gt;` 改为 `”struts.enable.DynamicMethodInvocation” value...

    struts2的详细讲解

    10. **动态方法调用(Dynamic Method Invocation,DMI)**:Struts2支持动态方法调用,使得Action方法的调用不再局限于固定的命名规则,增加了灵活性。 综上所述,Struts2是一个全面的Web开发框架,它提供了许多功能...

    Struts2属性文件详解

    该属性指定了Struts 2的对象类型检测机制,通常支持`tiger`和`notiger`两种属性值。其中`tiger`表示兼容Java 5及以上版本的类型检测,而`notiger`则表示不启用这些新特性。 #### struts.multipart.parser 指定了...

    Struts2学习笔记(3)-DMI动态调用方式

    本文将详细介绍Struts2中的DMI动态调用的两种实现方式。 1. **XML配置文件指定方法** 在`struts.xml`配置文件中,我们可以直接为Action定义要执行的方法。例如,以下配置表示当请求`/user/userAdd`时,会调用`...

    Struts2+DWR的简单实现

    2. **动态方法调用(Dynamic Method Invocation,DMI)**:Struts2支持动态方法调用,使得Action方法可以根据传入的参数来决定执行哪个方法。 3. **结果类型(Results)**:Struts2支持多种结果类型,如dispatcher(用于...

    struts2-blank

    6. **动态方法调用(Dynamic Method Invocation,DMI)**:Struts2支持动态方法调用,意味着Action方法可以根据请求参数动态选择。这提高了代码的可复用性和可扩展性。 7. **异常处理**:Struts2提供了一套完整的...

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

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

    Struts2帮助文档大全 详尽

    Struts2支持XML和注解两种配置方式,提供了高度的灵活性。 **7. 动态方法调用** 动态方法调用允许直接根据URL调用Action中的方法,而无需预先硬编码。这提高了代码的可读性和可维护性。 **8. 国际化与本地化** ...

    Struts2乱码终极解决办法

    确保JSP页面的编码格式与系统编码一致,可以采用以下两种方式之一进行设置: - 在JSP页面的顶部加入以下声明,指定页面的字符集为UTF-8: ```jsp ;charset=UTF-8" %&gt; ``` - 如果使用的是GBK或其他编码,则需要...

    struts2文档.zip

    Struts2引入了动态方法调用(Dynamic Method Invocation,DMI),允许根据URL中的Action名动态调用Action类的方法,提高了灵活性。 **5. Interceptors(拦截器)** 拦截器是Struts2的一大特色,它们在Action执行...

    struts2 jar包

    10. **动态方法访问(Dynamic Method Invocation,DMI)**:通过动态方法访问,Struts2可以基于请求参数调用Action方法,增加了灵活性。 在实际项目中,"struts2 jar包"通常包含以下部分: - `struts2-core.jar`:...

    struts.properties详解

    - **作用**:该属性用于指定Struts2的类型检测机制,支持`tiger`和`notiger`两种属性值。具体选择哪种取决于应用的需求。 #### 5. 文件上传相关属性 - **struts.multipart.parser**:该属性指定处理`multipart/form...

    Struts2API2.3

    在配置方面,Struts2 2.3支持两种配置方式:XML配置和注解配置。XML配置文件通常为`struts.xml`,用于定义Action、结果类型、拦截器栈等。而注解配置则可以直接在Action类或者方法上添加,使代码更加简洁易读。同时...

    struts2中文手册pdf

    2. **配置机制**:Struts2支持XML和注解两种配置方式。XML配置文件通常在`struts.xml`中定义,而注解则可以直接在Action类上使用,简化配置工作。 3. **拦截器(Interceptor)**:拦截器是Struts2的一个重要特性,...

Global site tag (gtag.js) - Google Analytics