首页 > 代码库 > 【web开发学习笔记】Structs2 Action学习笔记(三)action通配符的使用

【web开发学习笔记】Structs2 Action学习笔记(三)action通配符的使用

action学习笔记3-有关于通配符的讨论

使用通配符,将配置量降到最低,不过,一定要遵守"约定优于配置"的原则。

一:前端htm


<前端代码html>
	</head>
		<body>
			<a href=http://www.mamicode.com/"/actions/Studentadd">添加学生>

二:struct.xml

//struct.xml
<struts>
    <constant name="struts.devMode" value=http://www.mamicode.com/"true" />>

三:类包

//structs2调用的类包
package com.struts2.action;
import com.opensymphony.xwork2.ActionSupport;
public class StudentAction extends ActionSupport {
	public String add() {
		return SUCCESS;
	}
	public String delete() {
		return SUCCESS;
	}	
}

四:过程分析

执行步骤:点击<a href=http://www.mamicode.com/"/actions/Studentadd">添加学生 -> 通过struct.xml查找/actions/Studentadd -> 没有相匹配的action,则与namespace里面的Student*匹配  -> 调用类class="com.struts2.action.StudentAction -> 执行方法的选择,Studentadd与Student*匹配后,*就表示为add,{1},{2}的选择之后讨论。

五:讨论

添加一个新类
package com.bjsxt.struts2.action;
import com.opensymphony.xwork2.ActionSupport;
public class TeacherAction extends ActionSupport {
	public String add() {
		return SUCCESS;
	}	
	public String delete() {
		return SUCCESS;
	}	
}

当我们点击<a href=http://www.mamicode.com/"/actions/TeacherAdd">添加老师</a> -> 通过struct.xml查找/actions/TeacherAdd-> 没有相匹配的action,则与namespace里面的*_*匹配  -> 调用类class="com.struts2.action.{1}Action -> 执行方法的选择,Teacher与*_*中第一个星号匹配后,第二个*就表示为add,{1},{2}的选择根据*的顺序决定。

六:结论

约定的好的话,配置极其简单。通过第五步的讨论,当我们继续添加新类之后,配置不需要修改。