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. 008-CentOS添加环境变量

    在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行“php -v”命令查看当前php版本信息时时, ...

  2. Ubuntu 16.04安装JDK并配置环境变量(转发:https://blog.csdn.net/yan3013216087/article/details/78307258)

    系统版本:Ubuntu 16.04 JDK版本:jdk1.8.0_121 1.官网下载JDK文件jdk-8u121-linux-x64.tar.gz 我这里下的是最新版,其他版本也可以 2.创建一个目 ...

  3. Servlet中参数获取方法

    在web.xml里面可以定义两种参数: 一种是全局范围的参数, 一种是servlet内的参数. web.xml里定义参数的应用举例:在做分页功能时,可以在代码中直给定pageSize的值,这样,写死在 ...

  4. go——类型的本质

    在声明一个新类型之后,声明一个该类型的方法之前,需要先回答一个问题:这个类型的本质是什么. 如果给这个类型增加或删除某个值,是要创建一个新值,还是要更改当前的值? 如果是要创建一个新值,该类型的方法就 ...

  5. 微信小程序组件checkbox

    表单组件checkbox:官方文档 Demo Code: JS Page({ data:{ items:[ {name: 'USA', value: '美国'}, {name: 'CHN', valu ...

  6. python之路 面向对象基础 XML

    一.面向对象基础 1.类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 类变量:类变量在整个实例化的对象中是公用的.类变量定义 ...

  7. ASYNCAPI

    https://www.asyncapi.com Introduction AsyncAPI provides a specification that allows you to define Me ...

  8. python入门四:异常

    一.异常 异常就是在触发异常条件时(解释器或程序员)而采取相应的措施 c++中异常使用try, throw, catch等关键字,而python中使用try, raise, except等 二.标准异 ...

  9. js实现删除弹框确认

    JSP页面代码如下: <%@ page language="java" contentType="text/html; charset=UTF-8"%&g ...

  10. Java:判断字符串中包含某字符的个数

    Java:判断字符串中包含某字符的个数 JAVA中查询一个词在内容中出现的次数: public int getCount(String str,String key){ if(str == null ...