复制代码
1
2
3
<action name= "Login_*"
method= "{1}"
class= "mailreader2.Login">
中Login_*带*是什么意思?method= “{1} “带{}这个是什么意思?
解答:
name= “Login_* ”
代表这个action处理所有以Login_开头的请求
method= “{1} ”
根据前面请求Login_methodname,调用action中的以methodname命名的方法
class= “mailreader2.Login ”
action的类名称
如jsp文件中请求Login_validateUser的action名称,根据上面配置,调用action类mailreader2.Login类中方法validateUser()
又如:
对于Login_update请求,将会调用mailreader2.Login的update()方法。
Action Wildcard(Action 通配符)
配置:
复制代码
1
2
3
4
5
6
7
8
9
<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>
<!-- {0}_success.jsp -->
</action>
</package>
{1}、{2}表示第一第二个占位符
*为通配符
通过action name的通配匹配,获得占位符,可以使用占位符放在result和method、class中替代匹配的字符。
总结:
使用通配符,将配置量降到最低。
复制代码
1
2
3
4
5
6
7
<a href="<%=context %>/actions/Studentadd">添加学生
<a href="<%=context %>/actions/Studentdelete">删除学生
<a href="<%=context %>/actions/Teacher_add">添加老师
<a href="<%=context %>/actions/Teacher_delete">删除老师
<a href="<%=context %>/actions/Course_add">添加课程
<a href="<%=context %>/actions/Course_delete">删除课程
不过,一定要遵守”约定优于配置”的原则。
最后
以上就是明理羊最近收集整理的关于[Struts2]struts2的关于method=“{1}"意思详解的全部内容,更多相关[Struts2]struts2内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复