【struts2】action中使用通配符

分类: struts2

  在以前的学习中,元素的配置,都是用明确的配置,其name、class等属性都是一个明确的值。其实Struts2还支持class属性和method属性使用来自name属性的通配符。

  1)接下来看看使用通配符的示例,如果我们使用以下配置:

    /s2impl/welcome.jsp

在上面的配置中:

      name属性的值中“*”代表长度不为0的任意字符串,因此,它可以响应的action只需要名称中间有一个下划线即可。比如页面可访问的action名称为:HelloWorld_create.action、HelloWorld _update.action等等。

      在name属性定义了通配符之后,class属性使用第一个通配符(使用{1}作为占位),method属性使用第二个通配符。

      如果使用HelloWorld_create.action作为访问的action名称的话,struts.xml中action名称为HelloWorld_create,第一个通配符匹配HelloWorld,第二个通配符匹配create。因此,由cn.javass.action.action.HelloWorldAction的create方法来响应。

  2)那么,对于元素,能不能也使用元素的name属性定义的通配符呢?答案是可以的,假如有如下的配置:

    /${folder}/{4}.jsp

  3)在使用通配符的时候,也有可能不止一个使用通配符的元素可能匹配这次URL的访问,看以下的配置文件:

      /s2impl/welcome.jsp

      /s2impl/welcome.jsp

  这时候,如果访问“/helloworld/HelloWorld_create.action”,Struts2首先会查找是否有精确匹配的元素,这时候无论以上元素以什么顺序出现,Struts2肯定会先找到并使用精确匹配的元素。但是,如果没有精确匹配的元素,则Struts2会找到第一个匹配的使用通配符的元素来使用。

  通配符对于那些简单的CRUD的工程或软件原型来说,只要Action的包名、Action的类名、对应的方法名写的有规律的应用,能大大简化配置的工作。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.什么是框架 什么是框架,框架从何而来,为什么使用框架? 1).框架(framework)——半成品: 1.是一...
    贾里阅读 8,702评论 0 0
  • 概述 什么是Struts2的框架Struts2是Struts1的下一代产品,是在 struts1和WebWork的...
    inke阅读 6,705评论 0 50
  • 社員です社員でした 社員じゃありません 社員じゃありませんでした 社員だ社員だった 社員じゃない 社員じゃなかった...
    happymouse阅读 1,315评论 1 0
  • 2017年4月29日,19点30分,中超联赛第七轮河南建业对阵广州恒大的比赛在郑州航海体育场打响。 这是一场在外界...
    2dc6235618bc阅读 2,656评论 0 0
  • 导图简介:关于谦卑的一篇文
    蜻蜓ing阅读 1,027评论 1 5

友情链接更多精彩内容