01.创建对应的login.jsp页面

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head> <body>
<%-- 通配符的使用!!! 必须要掌握!!!!--%>
<a href="user/UserAction_add">新增用户</a>
<a href="user/UserAction_delete">删除用户</a>
<a href="user/UserAction_update">修改用户</a>
<a href="user/UserAction_find">查询用户</a> <%--验证{0} 是整个通配符 一般不使用--%>
<a href="user/UserAction_aaa">验证{0} 是整个通配符</a> <a href="user/UserAction_validates">验证精确匹配</a> </body>
</html>

02.创建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"/> <package name="default" namespace="/user" extends="struts-default">
<!--
<a href="user/UserAction_add">新增用户</a>
<a href="user/UserAction_delete">删除用户</a>
使用通配符的方式: 前提====》命名规范
*:就是通配符
{0}:匹配整个Action的name ===》 *_*(这不是笑脸!!!)
{1}:匹配的是通配符中的第1个子串
{2}:匹配的是通配符中的第2个子串 <a href="user/UserAction_validate">验证</a> 在xml文件中 通配符能匹配action
但是普通的action也能匹配!
到底执行哪一个? 精确匹配 肯定优先 模糊匹配
--> <action name="*_*" class="cn.bdqn.action.{1}" method="{2}">
<result name="addSuccess">/addSuccess.jsp</result>
<result name="updateSuccess">/updateSuccess.jsp</result>
<result name="findSuccess">/findSuccess.jsp</result>
<result name="deleteSuccess">/deleteSuccess.jsp</result>
<result name="validatesSuccess">/validatesSuccess.jsp</result>
</action> <!--
一般不使用{0}
<a href="user/UserAction_aaa">验证{0} 是整个通配符</a>
<action name="*_*" class="cn.bdqn.action.{1}" method="{0}">
<result name="validatesSuccess">/validatesSuccess.jsp</result>
</action>
--> <action name="UserAction_validates" class="cn.bdqn.action.UserAction" method="validates">
<result name="validatesSuccess">/deleteSuccess.jsp</result>
</action>
</package>
</struts>

03.创建对应的UserAction

package cn.bdqn.action;

import com.opensymphony.xwork2.ActionSupport;
/**
* 用户登录的action
*/
public class UserAction extends ActionSupport{ //新增用户的方法
public String add(){
System.out.println("执行add()");
return "addSuccess";
}
//修改用户的方法
public String update(){
System.out.println("执行update()");
return "updateSuccess";
}
//查询用户的方法
public String find(){
System.out.println("执行find()");
return "findSuccess";
}
//删除用户的方法
public String delete(){
System.out.println("执行delete()");
return "deleteSuccess";
}
//验证的方法
public String validates(){
System.out.println("执行validates()");
return "validatesSuccess";
}
//验证{0}的方法
public String UserAction_aaa(){
System.out.println("执行UserAction_aaa()");
return "validatesSuccess";
} }

04.创建对应的成功页面    省略!!!

Struts06---通配符的使用的更多相关文章

  1. jQuery选择器中,通配符[id^='code']input[id$='code'][id*='code']

     1.选择器 (1)通配符: $("input[id^='code']");//id属性以code开始的所有input标签 $("input[id$='code']&qu ...

  2. 读书笔记--SQL必知必会06--用通配符进行过滤

    6.1 LIKE操作符 通配符(wildcard),用来匹配某些值的的特殊字符. 在搜索子句中必须通过LIKE操作符使用通配符. 通配符搜索只能用于文本字段(字符串),非文本数据类型字段不能使用通配符 ...

  3. 配置IIS的通配符应用程序映射

    使用IIS 6架设网站,如果要使用伪静态的功能,可能需要设置“通配符应用程序映射(执行顺序)”. 在Windows Server 2012 r2 的IIS 8中,对应的是添加设置“通配符脚本映射”,参 ...

  4. jQuery的选择器中的通配符[id^='code'] 等示例及说明

    1.选择器 (1)通配符: $("input[id^='code']");//id属性以code开始的所有input标签 $("input[id$='code']&quo ...

  5. SpringMVC(六) RequestMapping 路径中ant风格的通配符

    SpringMVC支持路径中包含ant风格的通配符,常用的几种通配符及意义如下: ? 任意一个字符 * 任意多个字符 ** 匹配多层路径 测试控制器代码: package com.tiekui.spr ...

  6. bzoj 3507: [Cqoi2014]通配符匹配

    Description 几乎所有操作系统的命令行界面(CLI)中都支持文件名的通配符匹配以方便用户.最常见的通配符有两个,一个是星号(“”’),可以匹配0个及以上的任意字符:另一个是问号(“?”),可 ...

  7. jQuery的选择器中的通配符

    (1)通配符: $("input[id^='code']");//id属性以code开始的所有input标签 $("input[id$='code']");// ...

  8. Linux Shell 通配符、元字符、转义符【转帖】

    作者:程默 说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1   1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt  ...

  9. 一劳永逸:域名支持通配符,ASP.NET Core中配置CORS更轻松

    ASP.NET Core 内置了对 CORS 的支持,使用很简单,只需先在 Startup 的 ConfigureServices() 中添加 CORS 策略: public void Configu ...

  10. linux中的通配符与正则表达式

    在linux中,有通配符及正则表达式,那么什么是通配符和正则表达式,什么时候用?   通配符 它是由shell解析,并且一般用于匹配文件名,实际上就是shell解释器去解析的特殊符号,linux系统通 ...

随机推荐

  1. EC断言16种判断

    expected_conditions一般也简称EC,本篇先介绍下有哪些功能,后续更新中会单个去介绍. title_is: 判断当前页面的title是否完全等于(==)预期字符串,返回布尔值 titl ...

  2. 系列文章(三):WAPI为无线局域网WLAN安全而生——By Me

    导读:无线局域网(又称为WLAN,Wireless Local Area Network),其应用领域不断拓展,无线接入所具有的前所未有的连接性和自动化能够为人们带来巨大的便利和商机.与此同时,在信息 ...

  3. HDFS各个进程存储在磁盘上的数据含义和注意事项

    本文地址:http://www.cnblogs.com/qiaoyihang/p/6293402.html (一)Namenode的目录结构 HDFS进行初次格式化之后将会在$dfs.namenode ...

  4. 简明python教程五----数据结构(下)

    引用 当你创建一个对象并给它赋一个变量的时候,这个变量仅仅引用那个对象,而不是表示这个对象本身!即,变量名指向你计算机中存储那个对象的内存. print 'Simple Assignment' sho ...

  5. Jupyter Notebook修改目标文件

    默认的路径 如果没有修改配置文件,那么一般就在用户目录下面: 下面各处默认起始目标地址,以防有一天想改回来 I:\shujufenxi\python.exe I:\shujufenxi\cwp.py ...

  6. 『NiFi 学习之路』入门 —— 下载、安装与简单使用

    一.概述 "光说不练假把式." 官网上的介绍多少让人迷迷糊糊的,各种高大上的词语仿佛让 NiFi 离我们越来越远. 实践是最好的老师.那就让我们试用一下 NiFi 吧! 二.安装 ...

  7. URAL - 1902 Neo-Venice

    题目: Mars was the first planet colonized by humans. After a long terraforming process its appearance ...

  8. cdoj1338郭大侠与英雄学院

    地址:http://acm.uestc.edu.cn/#/problem/show/1338 思路: 郭大侠与英雄学院 Time Limit: 6000/2000MS (Java/Others)    ...

  9. CodeForces - 986A Fair (BFS+贪心)

    题意:有N个点M条边的无向图,每个点有给定的ai(1<=ai<=K,K<=200)表示该点拥有的物品编号,保证1-K在N个点全部出现.求每个点收集S个不同的物品所要走过的最短路程(边 ...

  10. Hbase1.2.4概述

    安装Hbase的时候,需要注意版本与Hadoop的版本兼容,具体查看:https://hbase.apache.org/book.html#basic.prerequisites 如下图: 我的Had ...