Struts2的通配符

使用通配符的好处就是可以减少配置文件的内容,但是会减少可读性。

使用通配符的原则是:约定优于配置

 通配符的分类:

1.匹配元字符

代码/语法 说明
.              匹配除换行符以外的任意字符
w           匹配字母或数字
s            匹配任意的空白符
d           匹配数字
           匹配单词的开始或结束
^            匹配字符串的开始
$           匹配字符串的结束

2.限定元字符
+       1到多次
?      0到1
*       0到多次

struts2通配符使用的例子:

action方法:

public class UserAction extends ActionSupport {
public String del(){
return "del";
}

public String add(){
return "add";
}

public String list(){
return "list";
}
}
struts的xml配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.devMode" value="true"></constant>
<package name="pattern" namespace="/" extends="struts-default">
<!--第一个 * 代表Action类的名称 第二个 * 代表类中方法的名称-->
<action name="*_*" class="cn.sjl.day02.pattern.{1}" method="{2}">
<result name="{2}">/day02/{2}.jsp</result>
</action>
</package>
</struts>

jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
<title>成功 </title>
</head>
<body>
添加成功
</body>
</html>


web.xml配置文件
<web-app>
<display-name>Archetype Created Web Application</display-name>
<filter>
<filter-name>struts</filter-name>
<!--核心控制器-->
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

</web-app>

访问方式:

struts2通配符使用虽然简单,但是它也有一定的局限性(缺点)。

缺点:1.可读性差
          2.和其他一些标签联合使用的使用,其他标签的威力发挥不出来了






原文地址:https://www.cnblogs.com/sujulin/p/8473210.html