1、 ActionMethod:Action执行的时候并不一定要执行execute方法,可以在配置文件中配置action的时候用“method”属性来指定执行哪个方法,也可以在url地址中动态指定(动态方法调用DMI)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> <constant name="struts.devMode" value="true" /> <package name="user" extends="struts-default" namespace="/user"> <action name="userAdd" class="com.bjsxt.struts2.user.action.UserAction" method="add"> <result>/user_add_success.jsp</result> </action> <action name="user" class="com.bjsxt.struts2.user.action.UserAction"> <result>/user_add_success.jsp</result> <result name="delete">/user_delete_success.jsp</result> </action> </package> </struts>
index.jsp页面的内容:
<?xml version="1.0" encoding="GB18030" ?> <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <% String context = request.getContextPath(); %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030" /> <title>Insert title here</title> </head> <body> <a href="<%=context %>/user/userAdd">添加用户</a><br /> <a href="<%=context %>/user/user!add">添加用户</a><br /> <a href="<%=context %>/user/user!delete">删除用户</a><br /> </body> </html>
UserAction的内容:
package com.bjsxt.struts2.user.action; import com.opensymphony.xwork2.ActionSupport; public class UserAction extends ActionSupport { public String add() { return SUCCESS; } public String delete(){ return "delete"; } }
2、 使用通配符
strtus.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.devMode" value="true" /> <package name="actions" extends="struts-default" namespace="/actions"> <action name="Student*" class="com.bjsxt.struts2.action.StudentAction" method="{1}"> <result>/Student{1}_success.jsp</result> </action> <action name="*_*" class="com.bjsxt.struts2.action.{1}Action" method="{2}"> <result>/{1}_{2}_success.jsp</result> </action> </package> </struts>
Action的内容:
public class CourseAction extends ActionSupport { public String add() { return SUCCESS; } public String delete() { return SUCCESS; } } public class StudentAction extends ActionSupport { public String add() { return SUCCESS; } public String delete() { return SUCCESS; } } public class TeacherAction extends ActionSupport { public String add() { return SUCCESS; } public String delete() { return SUCCESS; } }
index.jsp页面的内容:
<?xml version="1.0" encoding="GB18030" ?> <%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <%String context = request.getContextPath();%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030" /> <title>Insert title here</title> </head> <body> 使用通配符,将配置量降到最低<br /> <a href="<%=context%>/actions/Studentadd">添加学生</a> <a href="<%=context%>/actions/Studentdelete">删除学生</a><br /> 不过,一定要遵守"约定优于配置"的原则<br /> <a href="<%=context%>/actions/Teacher_add">添加老师</a> <a href="<%=context%>/actions/Teacher_delete">删除老师</a> <a href="<%=context%>/actions/Course_add">添加课程</a> <a href="<%=context%>/actions/Course_delete">删除课程</a> </body> </html>
相应的jsp页面有:
Course_add_seccess.jsp
Course_delete_success.jsp
Teacher_add_seccess.jsp
Teacher_delete_success.jsp
Studentadd_success.jsp
Studentdelete_success.jsp
相关推荐
Struts2_Action学习笔记、通配符{1},{2}......
struts2利用通配符调用同一个Action里面不同的方法,在struts.xml配置文件中将请求方法的不相同部分抽象成“*".
struts2通配符的使用详解
通过示例代码演示Struts2配置中通配符的用法,代码很简单,只为说明
在struts2项目开发中,使用通配符优化配置文件,可以位项目开发节约大量的时间!
这是一个很有用的Struts通配符文档,如果你还在迷惑中,下载吧!
易语言文本实现匹配通配符源码,文本实现匹配通配符
8.1.1 页面上:如何使用自定义结果组件构建Struts 2 Ajax应用程序 171 8.1.2 实现JSON结果类型 173 8.2 常用的结果类型 180 8.2.1 RequestDispatcher,也叫做dispatcher 180 8.2.2 ServletRedirectResult,也叫做...
struts2动态调用之通配符,相当于是改进的method动态调用方法,减少对同一action不同method的多次配置
易语言匹配通配符API源码,匹配通配符API,匹配通配符,PathMatchSpec
Struts2动态方法调用 包括 1.js方法调用 2.普通的表单提交调用 3.通配符
详细介绍Struts2 如何使Action取得属性范围 通配符 国际化等内容,并使用事例说明
完整的Struts2_通配符映射创建步骤及代码
主要介绍了struts2.5+框架使用通配符与动态方法常见问题 ,在文中给大家提到了Struts2.5框架使用通配符指定方法 ,需要的朋友可以参考下
带通配符的字符串匹配算法,带通配符的字符串匹配算法
Struts2一个Action内包含多个请求处理方法的处理,method的使用方法,struts2中的路径问题,通配符映射
struts2通配符示例 正在学习struts2 对于通配符书上的示例没有,就自己做了一个,相当简陋只是纸上谈兵望大家包含。
Namespace、自定义Action、路径问题、通配符、包含模块配置文件、默认Action、接受用户输入、服务器跳转、Action中访问web元素、简单数据校验、调用Action的自定义方法 5struts2国际化 ......... 6 struts2输入校验...
C++实现字符串匹配函数,匹配中可以包括通配符
2 将struts2 整合进去, 这次在struts.xml中我们使用通配符的方式配置action。 a 加入支持 : 添加struts2.3.15 必需包 以及 struts json包(ajax要用到),spring整合struts2包,spring web 包,在src目录下建立...