其实有 8 动态调用Action与Action中方法(一)
这第一种方法, 这第二三种方法,就显示的不重要了, 只能动态调用Action中方法 , 但这里也记一下
第二种方法
method="addUser" ,method="getUserList"
<action name="addUser" class="ssh.org.web.UserAction" method="addUser">
<result name="success">/user/success.jsp</result>
<result name="input">/user/user.jsp</result>
</action>
<action name="getUser" class="ssh.org.web.UserAction" method="getUserList">
<result name="success">/user/success.jsp</result>
<result name="input">/user/user.jsp</result>
</action>
其实我们只有一个ssh.org.web.UserAction 类, 但配置了两个<action ..../> , 这就是把一个Action类映射成多个逻辑Action . 有点像struts1 中的MappingDispatchAction .
我们分别 请求两个不同的URL: addUser.action, getUser.action, 就能执行同一个Action中不同的业务方法.
------------------------------------------------------------------------------------------------
第三种方法:
URL 是这样地: ActionName!methodName.action
不细说了
分享到:
相关推荐
那么,在 Struts2 中如何动态调用 Action 的指定方法呢? 首先,我们可以在表单中使用 `<form action="login!register">` 将表单提交到 LoginAction 的 register() 方法。这是最简单的方式,但是这种方式不够灵活,...
在Struts2中,动态方法调用(Dynamic Method Invocation,DMI)是一种特性,允许我们通过URL直接调用Action类的方法,而无需在配置文件中显式指定。这在某些情况下提供了更大的灵活性。 在Struts2的动态方法调用中...
在JSP中,我们可以通过标签库(Tag Library)如JSTL(JavaServer Pages Standard Tag Library)来处理表单数据和调用Action。例如,我们可以使用`<c:choose>`、`<c:when>`等标签进行条件判断,决定调用哪个Action。 ...
- 在设计自动调用Action的过程中,需要确保不会因为恶意请求导致的安全问题。例如,可以通过限制Action的访问权限、对输入参数进行校验等方式来提高系统的安全性。 2. **用户体验**: - 考虑到用户体验,应尽量...
默认情况下,Struts 2会调用Action类中的`execute()`方法。 2. **Struts.xml**: 这是Struts 2的配置文件,用于配置Action、拦截器等组件。 3. **Interceptors (拦截器)**: 拦截器用于处理Action执行前后的一系列...
在传统的MVC模式中,控制器(Controller)通常通过硬编码的方式处理请求,而动态方法调用则允许我们动态地决定执行哪个Action的方法。这在处理多样化的用户请求和构建复杂应用时尤其有用。 1. **JS方法调用**: 在...
此外,它还支持动态方法调用,即根据请求参数的不同,动态决定执行哪个方法。例如,你可以设置一个`execute`方法来处理默认请求,而其他方法则通过通配符调用。 在实际开发中,我们还可以结合Struts2的拦截器...
Struts2 动态方法调用(DMI,Dynamic Method Invocation)是Struts2框架中一个特色功能,允许开发者通过URL直接调用Action类中的方法,而无需预先在配置文件中显式声明这些方法。这种机制增加了开发的灵活性,但也...
在Struts2中,动态方法调用基于Action类中的方法名与URL中的参数相匹配的原则。当一个请求到达时,Struts2会解析URL中的方法名(通常是通过在Action名称后加上“!”符号后跟的方法名),然后在对应的Action类中查找...
`DefaultActionProxy`内部包含了Action的配置信息,它会创建并初始化`DefaultActionInvocation`,`DefaultActionInvocation`是Action执行过程的具体实现,它会按照配置信息调用Action的方法并处理结果。 - `...
6. **传递参数**:动态调用时,`DynamicInvoke`方法接收一个对象数组作为参数,数组中的元素顺序应与目标函数的参数顺序一致。如果目标函数有返回值,`DynamicInvoke`会返回该值。 注意,如果DLL函数使用了非托管...
Struts2会根据URL中的部分替换通配符,并尝试调用Action类中的方法。如果找不到与之匹配的方法,Struts2将会回退到默认的执行方法(通常是`execute`)。 为了更高效地利用这一特性,我们需要遵循以下几点: 1. 方法...
如果使用表单提交的方式来调用Action,则可以通过表单中的`<input>`标签来传递参数。例如,`<input name="paraName" value="arg0">`表示传递一个名为`paraName`的参数,其值为`arg0`。 #### 总结 通过JavaScript...
在.NET框架中,C#语言提供了强大的反射机制,使得我们能够在运行时动态地获取类型、接口、属性、字段和方法等信息,甚至可以创建对象并调用其方法。本篇文章将详细探讨如何利用C#来动态获取DLL类库文件中的方法并...
与静态调用相比,动态调用无需预先知道服务的具体接口和实现,而是通过WSDL(Web Services Description Language)文件来获取服务的元数据,然后在运行时自动生成客户端代理类。 2. **Axis2简介**: Axis2是基于...
具体要求是在loginAction类中分别用login()和registered()处理用户登录和注册的过程,分别创建login.jsp和register.jsp两个页面实现登录和注册的输入,这两个页面提交给loginAction中的两个方法进行业务处理,...
三、动态方法调用的优势 1. 提高代码复用:多个操作可以共享一个Action类,降低了类的数量,提高了代码复用性。 2. 降低配置复杂性:无需为每个方法创建单独的Action配置,减少了XML配置文件的维护工作。 3. 提升...
如果需要带参数的话可以在action中定义那个参数名paraName,并生成setter和getter方法 方法二: <script type= "text/javascript"> function formSubmit(url) { document.forms[0].action=url; document....
在C#中,动态调用意味着在运行时创建对象并执行方法,而不是在编译时。这对于处理未知或不固定的Web服务接口特别有用。下面是一步步的实现过程: 1. **导入Web服务引用**:通常,我们会使用`Add Service Reference`...
sp页面的form表单里面有一个属性值action,当提交jsp页面上的form表单时,系统会根据action的值来找到servlet里面具体的action,(这里的servlet是在web.xml配置文件里面),然后调用action里面的execute()方法,...