Struts2------通配符

时间:2021-09-09 21:32:41
<struts>
<package namespace="/" extends="struts-default" name="test" >
<action name="test_*" class="com.test.action.Test" method="{1}">
<result name="{1}">views/test_{1}.jsp</result>
</action>
</package>
</struts>

先解释一下上面绿标的代码

1) test_*:中*代表访问地址可以为test_world,test_hello或test_#等但是不能用 / 和 . 其中#号访问的是execute()

2) method="{1}:中{1}表示从地址栏获取到的访问路径
  比如:输入地址为 http://localhost:8080/testStruts2/test_save 那么{1}的值为save   以此类推其余的{1}的参数
    name="{1}"等于name="save"
    views/test_{1}.jsp等于 views/test_save.jsp 解释清楚接下来就容易理解了
先看目录结构:
Struts2------通配符
jsp统一<body>这是XXXX.jsp</body> 再看访问效果
地址:http://localhost:8080/testStruts2/test_save
结果:這是test_save.jsp
地址:http://localhost:8080/testStruts2/test_update
结果:這是test_update.jsp
地址:http://localhost:8080/testStruts2/test_delete
结果:這是test_delete.jsp 总结:命名约束好可以用一下 减少配置 提高效率
    上述*可以多个*_*_*获取{1}_{2}_{3} 获取是从一开始