看到李剛老師寫的Struts2權威指南中寫到的動態方法調用,覺得那里面通配符的用法太複雜了,還要處理很多的配置文件,經過多次試驗,發現了一個簡單的方法可以實現動態方法調用,那就是直接使用struts2標籤的
<submit method="">method屬性指向該Action的邏輯處理方法。比如(jsp文件)
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><s:text name="loginPage"/></title>
</head>
<body>
<!-- 使用form標籤生成表單元素 -->
<s:form action="Login">
<s:textfield name="username" key="user"/>
<s:password name="password" key="pass"/>
<s:submit key="regist" method="regist"/>
<s:submit key="login"/>
</s:form>
</body>
</html>
上面的用到了國際化資源文件,key屬性的值對應資源文件的key, 上面的表單有兩個按鈕,一個是“注冊”用的,一個是“登錄”用的,用了<s:submit key="regist" method="regist"/>后,不需要在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>
<package name="Struts2Test" extends="struts-default">
<action name="Login" class="action.LoginAction">
<result name="input">/login.jsp</result>
<result name="error">/error.jsp</result>
<result name="success">/welcome.jsp</result>
</action>
</package>
</struts>
像上面這樣配置就夠了。當用戶點擊“注冊”按鈕時,struts2框架會調用對應Action類的regist()方法去處理邏輯,用戶點擊“登錄”按鈕后因為該標籤沒有設置method的屬性值,struts2框架會調用默認的方法execute()去處理。
當然不要忘了,在Action類中增加邏輯處理方法regist()。
這樣就可以實現動態方法的調用了。
分享到:
相关推荐
Struts2_动态方法调用,使用struts2架构的动态方法进行资源调用
Struts2动态方法调用 包括 1.js方法调用 2.普通的表单提交调用 3.通配符
NULL 博文链接:https://takeme.iteye.com/blog/1631525
struts2中动态方法的调用,如何实现动态方法调用
struts 1框架的动态调用也许你会,但是struts2 的动态调用更经典,这个文档让你玩转struts 2 动态调用.......
本文档主要介绍了struts2中API耦合的三种方法以及动态方法调用(Dynamic Method Invoked)的两种方法,希望对你有所帮助,谢谢!
NULL 博文链接:https://cdxs2.iteye.com/blog/1925232
Struts2中直接和间接访问ServletAPI以及动态方法调用之感叹号
struts2动态调用之通配符,相当于是改进的method动态调用方法,减少对同一action不同method的多次配置
利用Struts 2框架创建一个web项目chap2_e22,实现用户登录过程。具体要求是在loginAction类中分别用login()和registered()处理用户登录和注册的过程,分别创建login.jsp和register.jsp两个页面实现登录和注册的...
struts动态访问调用之一,采用method属性,同一个Action内的不同方法来响应用户请求
struts2利用通配符调用同一个Action里面不同的方法,在struts.xml配置文件中将请求方法的不相同部分抽象成“*".
主要介绍了详解Struts2动态方法调用,涉及调用方法的代码,具有一定参考价值,需要的朋友可以了解下。
Struts2调用EJB异常项目包,出现的问题以及解决方案参见EJBStruts.zip中的说明.txt 以及博客 http://blog.csdn.net/icecream0/article/details/7167853
详细讲解struts2中单个action中多个处理逻辑的配置方法, 以及默认Action的配置.
struts2实验一:动态方法调用+请求参数的获取+简单的表单数据验证
JS调用Struts中的ActionJS调用Struts中的ActionJS调用Struts中的Action
Webservice+spring+struts小例子,简单方法调用
如题,Struts2登陆+输入验证+动态调用实例,使用MyEclipse导入直接就可以运行
Java中:struts2+jQuery+ajax调用(引用) 代码,解析,源码,demo,实例,分析