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. mysql以下c连接mysql数据库

    1.安装sudo yum install mysql-devel  安装组件和库 2. #include <stdio.h> #include <stdlib.h> #incl ...

  2. 系列文章(二):从WLAN的安全威胁,解析电信诈骗的技术症结——By Me

    导读:互联网的无线接入已经成为大趋势,其中无线局域网(又称为WLAN,Wireless Local AreaNetwork)以其使用方便.组网灵活.可扩展性好.成本低等优点,成为互联网特别是移动互联网 ...

  3. mui请求数据

    var rh = new Object(); rh.ReqId = "ls123"; rh.Salt = "sssseee"; var rb = new Obj ...

  4. linux 或c 时间相关处理类型和函数

    注意1.精确级别,纳秒级别原型long  clock_gettime (clockid_t which_clock, struct timespec *tp); 头文件time.hwhich_cloc ...

  5. python16_day14【jQuery】

    一.作用域 1.作用域例一 <script> var str = "global"; //AO1 AO1.str function t(age){ console.lo ...

  6. Python 优雅的操作字典

    Python 中的字典是Python中一个键值映射的数据结构,下面介绍一下如何优雅的操作字典. 来源:https://www.linuxzen.com/python-you-ya-de-cao-zuo ...

  7. maven打包生成war

  8. CWinApp类CMultiDocTemplate类CDocument类CView类的关系

    转自:http://blog.csdn.net/bboot/article/details/26884011 不得不转,瞬间搞清了很多问题,短小精悍 1.CWinApp类   它包含并管理着应用程序的 ...

  9. QT5.6.0 鼠标支持

    QT5用QPA换了QWS之后,USB鼠标就不知道怎么支持,网上搜啊搜,各种尝试,终于可以了. export TSLIB_ROOT=/mnt/sdcard/tslib export TSLIB_PLUG ...

  10. article嵌套

    例如: 为了将每一个部分都突出显示,可以将article添加边框和颜色的属性: <style> article{ border: 1px solid #ff0000; margin: 5p ...