struts2通配符配置详解,让你一看就懂的教程!

吉云

今天心血来潮,想搞搞Struts2的通配符配置,省得每次写一堆差不多的配置,看着就烦。搞起!

准备工作

咱得把Struts2的环境搭起来。打开MyEclipse,创建一个Web项目,把Struts2的jar包都丢进去。这一步,老手们都懂,我就不啰嗦。

struts2通配符配置详解,让你一看就懂的教程!

然后,在*里面配置一下Struts2的核心过滤器。这玩意儿就像一个门卫,所有Struts2的请求都得经过它:

<filter>

<filter-name>struts2</filter-name>

<filter-class>**.*</filter-class>

</filter>

struts2通配符配置详解,让你一看就懂的教程!

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/</url-pattern>

</filter-mapping>

弄完这一步,Struts2这就算进门。

struts2通配符配置详解,让你一看就懂的教程!

开始搞通配符

就是重头戏。咱打开Struts2的配置文件,一般叫*。以前,我都是这么写的:

<action name="addUser" class="*" method="add">

<result>/*</result>

</action>

struts2通配符配置详解,让你一看就懂的教程!

<action name="deleteUser" class="*" method="delete">

<result>/*</result>

</action>

你看,每个action都要写一遍,烦不烦?有通配符,咱就可以这么写:

struts2通配符配置详解,让你一看就懂的教程!

<action name="_" class="*.{1}Action" method="{2}">

<result>/{2}*</result>

</action>

解释一下:

    struts2通配符配置详解,让你一看就懂的教程!

  • `_ `:这就是通配符,``代表任意字符。这样,我访问`user_*`,或者`product_*`,都能匹配到这个action。
  • `{1}`:代表第一个``匹配到的内容。比如`user_*`,`{1}`就是`user`。
  • `{2}`:代表第二个``匹配到的内容。比如`user_*`,`{2}`就是`add`。

这样,我就把`UserAction`里面的`add`、`delete`方法,还有`ProductAction`里面的各种方法,都用一个action配置搞定!

踩坑与解决

struts2通配符配置详解,让你一看就懂的教程!

实践过程中,我也不是一帆风顺的。我把result写成`/*`,结果发现,不管怎么搞,都找不到页面。后来我才想起来,result里面也可以用通配符!改成`/{2}*`,问题解决!

总结

用通配符,Struts2的配置文件一下子清爽不少。以后再也不用写那么多重复的配置。感觉自己又掌握一个偷懒的技巧,哈哈!这回实践,也让我对Struts2的通配符有更深的理解。以后写配置,再也不怕麻烦!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]