【Strurts框架】第一节Action-通配符

使用通配符,将配置量降到最小。

在配置Action这样写:
<action name="student*" class="cn.edu.hpu.action.StudentAction" method="{1}">
       <result name="success">/student{1}_success.jsp</result>
</action>

{1}与*就是通配符。其中{1}指的是“*”号所代表的字符串,method="{1}"代表的就是使用StudentAction中方法名为{1}(说白了就是student后面的字符串)的方法来获取result。

如:
<a href="<%=basePath %>javaee/studentadd">添加学生</a><br/>
<a href="<%=basePath %>javaee/studentdelete">删除学生</a><br/>

这里的studentadd与studentdelete的student后面的字符串就是所谓的“*”,{1}就分别被赋值为add与delete,即:method="add"和method="delete"。

而StudentAction中只需要部署好这两个方法即可:
package cn.edu.hpu.action;

public class StudentAction {
	public String add(){
		return "success";
	}
	
	public String delete(){
		return "success";
	}
}

这种方式避免了多次建立action来指定跳转的jsp或html页面(也适用于多result的情况)

注意:一定要遵守“约定优于配置”的原则
(例如,项目经理会约定你们,各种方法的命名规则,必须怎么怎么写)
注意:struts首先匹配最精确的,如果有比通配符更精确的,首先匹配精确的那个。
结语:通配符用好了,可以将配置优化到最简化

一个最简化配置的例子:
struts.xml:
<package name="default" namespace="/javaee" extends="struts-default">  
   <action name="*_*" class="cn.edu.hpu.action.{1}Action" method="{2}">
       <result name="success">/{1}_{2}_success.jsp</result>
   </action>
</package> 

TeatherAction:
public class TeatherAction {
	public String add(){
		return "success";
	}
	
	public String delete(){
		return "success";
	}
}

Teather_add_success.jsp:
<html>
  <head>
    <title>My JSP 'Teather_add_success.jsp' starting page</title>
  </head>
  
  <body>
    Teather add success!!!!<br>
  </body>
</html>

Teather_delete_success.jsp:
<html>
  <head>
    <title>My JSP 'Teather_add_success.jsp' starting page</title>
  </head>
  
  <body>
    Teather delete success!!!!<br>
  </body>
</html>

调用:
<a href="<%=basePath %>javaee/Teather_add">添加老师</a><br/>

<a href="<%=basePath %>javaee/Teather_delete">删除老师</a><br/>


结果读者自己思考一下吧?(动手实践)

转载请注明出处:http://blog.csdn.net/acmman/article/details/44158439


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

光仔December

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值