五 Action访问方法,method配置,通配符(常用),动态
1 通过method配置(有点low)
- 建立前端JSP:demo4.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Action的配置方法1:method配置</title> </head> <body> <h1>Action的访问</h1> <h3>1通过method的方式</h3> <a href="${pageContext.request.contextPath }/userFind1.act">查找用户</a><br/> <a href="${pageContext.request.contextPath }/userUpdate1.act">修改用户</a><br/> <a href="${pageContext.request.contextPath }/userDelete1.act">删除用户</a><br/> <a href="${pageContext.request.contextPath }/userSave1.act">保存用户</a><br/> </body> </html>
- 建立与之对应的Action类,采用继承ActionSupport的方式
import com.opensymphony.xwork2.ActionSupport; /** * Action访问方式一:method配置 * return NONE 不跳转 */ public class UserAction1 extends ActionSupport { public String find1(){ System.out.println("userFind1...."); return NONE; } public String update1(){ System.out.println("userUpdate1...."); return NONE; } public String delete1(){ System.out.println("userDelete1...."); return NONE; } public String save1(){ System.out.println("userSave1...."); return NONE; } }
- 建立配置文件structs_demo4.jsp
<?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"> <!-- 通过method配置--> <struts> <package name="demo4" extends="struts-default" namespace="/"> <action name="userFind1" class="com.itheima.Structs.demo4.UserAction1" method="find1"></action> <action name="userUpdate1" class="com.itheima.Structs.demo4.UserAction1" method="update1"></action> <action name="userDelete1" class="com.itheima.Structs.demo4.UserAction1" method="delete1"></action> <action name="userSave1" class="com.itheima.Structs.demo4.UserAction1" method="save1"></action> </package> </struts>
- 将配置文件用include标签添加到struts.xml文件中
<include file="com/itheima/Structs/demo4/struts_demo4.xml"></include>
2 通过通配符的方式(开发常用)
jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Action访问方式2:通配符</title> </head> <body> <h3><a href="${pageContext.request.contextPath }/product_find1.action">查询商品</a></h3><br/> <h3><a href="${pageContext.request.contextPath }/product_update1.action">更新商品</a></h3><br/> <h3><a href="${pageContext.request.contextPath }/product_delete1.action">删除商品</a></h3><br/> <h3><a href="${pageContext.request.contextPath }/product_save1.action">保存商品</a></h3><br/> </body> </html>
Action类:
package com.itheima.Structs.demo4; import com.opensymphony.xwork2.ActionSupport; /** * 通配符配置Action * */ public class ProductAction1 extends ActionSupport { public String find1(){ System.out.println("查询商品"); return NONE; } public String update1(){ System.out.println("更新商品"); return NONE; } public String delete1(){ System.out.println("删除商品"); return NONE; } public String save1(){ System.out.println("保存商品"); return NONE; } }
配置文件:
<?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> <!--通过通配符的方式 --> <action name="product_*" class="com.itheima.Structs.demo4.ProductAction1" method="{1}"></action> </package> </struts>
3 通过动态配置的方式
jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>动态方法配置Action</title> </head> <body> <h3>动态方法配置Action</h3> <h3><a href="${pageContext.request.contextPath }/customer!find.action">查询客户</a></h3> <h3><a href="${pageContext.request.contextPath }/customer!update.action">更新客户</a></h3> <h3><a href="${pageContext.request.contextPath }/customer!delete.action">删除客户</a></h3> <h3><a href="${pageContext.request.contextPath }/customer!save.action">保存客户</a></h3> </body> </html>
Action类:
package com.itheima.Structs.demo4; import com.opensymphony.xwork2.ActionSupport; public class CustomerAction1 extends ActionSupport { public String find(){ System.out.println("用户查询"); return NONE; } public String update(){ System.out.println("用户更新"); return NONE; } public String delete(){ System.out.println("用户访问"); return NONE; } public String save(){ System.out.println("用户保存"); return NONE; } }
配置文件:
<?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.enable.DynamicMethodInvocation" value="true"></constant> <package name="demo4" extends="struts-default" namespace="/"> <!-- 动态方法 --> <action name="customer" class="com.itheima.Structs.demo4.CustomerAction1"></action> </package> </struts>
五 Action访问方法,method配置,通配符(常用),动态的更多相关文章
- struts 中自定义action访问方法
struts中action类继承了ActionSupport 默认实现了execute()方法 struts.xml配置文件中 然后可以配置如下映射: <package name =" ...
- Struts2学习笔记(五)——Action访问Servlet API
在Strut2中访问Servlet API有三种方式: 1.通过ActionContext访问Servlet API,推荐使用这种,但是这种方案它获取的不是真正的事Servlet API. 步骤: 1 ...
- struts2 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用
Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...
- 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用
Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...
- {Django基础十之Form和ModelForm组件}一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 ModelForm
Django基础十之Form和ModelForm组件 本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Model ...
- 第三章Struts2 Action中动态方法调用、通配符的使用
01.Struts 2基本结构 使用Struts2框架实现用登录的功能,使用struts2标签和ognl表达式简化了试图的开发,并且利用struts2提供的特性对输入的数据进行验证,以及访问Servl ...
- struts配置通配符*来匹配方法,实现动态调用
01:web.xml中配置,启动struts2 <?xml version="1.0" encoding="UTF-8"?> <web-app ...
- Struts(五)Action的访问
在struts开发中,Action作为框架的核心类,实现对用户的请求的处理,Action被称为业务逻辑控制器.一个Action类代表一次请求或调用.Action就是用来处理一次用户请求的对象 Acti ...
- struts2 正确配置通配符方式访问,报错解决
今天遇到正确配置通配符访问action的方法,但是还是报错,原因struts 2.3 以后会内部会验证是否允许该方法,而我用的刚好是2.5的版本 要action配置中加上<allowed-met ...
随机推荐
- 每天进步一点点------Sobel算子(3)基于彩色图像边缘差分的运动目标检测算法
摘 要: 针对目前常用的运动目标提取易受到噪声影响.易出现阴影和误检漏检等情况,提出了一种基于Sobel算子的彩色边缘图像检测和帧差分相结合的检测方法.首先用Sobel算子提取视频流中连续4帧图像的 ...
- 每天进步一点点------FPGA 静态时序分析模型——reg2reg
2. 应用背景 静态时序分析简称STA,它是一种穷尽的分析方法,它按照同步电路设计的要求,根据电路网表的拓扑结构,计算并检查电路中每一个DFF(触发器)的建立和保持时间以及其他基于路径的时延要求是否满 ...
- iOS 自动化打包发布(Fastlane+ Jenkins+蒲公英)
安装 Xcode 命令行工具:xcode-select --install 安装 fastlane:sudo gem install fastlane --verbose 安装成功后查看版本:fast ...
- 普通的javaweb项目和用maven管理的javaweb project的目录结构的区别
图一,图二 这种就是单独的建立普通的(也就是没有用maven管理包)javaweb项目的结构目录,这种需要将普通的jar依赖放到lib目录下,之后通过bulid 图一
- asp.net 大文件上传配置
<system.web> <httpRuntime requestValidationMode=" ></httpRuntime> <!--单位:K ...
- 搭建robotframework环境
1.安装rf 执行命令:pip install robotframework; 2.安装seleniumlibrary库 执行命令:pip install --upgrade robotframewo ...
- 【MySQL】表的操作
" 目录 #. 表操作 1. 创建数据库 2. 进入指定库 3. 创建表 4. 添加记录 5. 查询表的数据和结构 /. 查指定表中的存储数据 /. 查指定表的结构 6. 复制表 /. 即复 ...
- ECMAScript中的箭头函数 (=>) 使用注意事项
箭头函数表达式的语法比函数表达式更简洁,并且没有自己的this,arguments,super或 new.target.这些函数表达式更适用于那些本来需要匿名函数的地方,并且它们不能用作构造函数. 箭 ...
- SQLite3创建表及操作
SQLite 创建表 SQLite 的 CREATE TABLE 语句用于在任何给定的数据库创建一个新表.创建基本表,涉及到命名表.定义列及每一列的数据类型. 语法 CREATE TABLE 语句的基 ...
- php 基础 自动类型转换
1.自动类型转换:表示运算的时候,Boolean,Null,String等类型,会先自动转为Integer或Float类型 null-->0 true-->1 false-->0 S ...