五 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 ...
随机推荐
- 题解【洛谷P5436】【XR-2】缘分
题目背景 世间万物都置身于缘分编织的大网中.缘分未到,虽历经千劫,却不能相遇.缘分到了,在草原上都能等到一艘船.--<一禅小和尚> 题目描述 一禅希望知道他和师父之间的缘分大小.可是如何才 ...
- sublime-text3 安装 emmet 插件
下载sublime,http://www.sublimetext.com/ 安装package control :https://packagecontrol.io/ins... 这个地址需要翻墙,访 ...
- Java编写POST请求
package com.mytesting; import java.io.DataOutputStream; import java.io.InputStream; import java.net. ...
- zol验证码抓包
http://www.zol.com/detail/lcd/samsung/25254662.html?zp_from=pro_price_pricenode 网站’ http://city.zol. ...
- December 31st, Week 53rd Tuesday, 2019
Nothing comes from nothing. 天下没有免费的午餐. Nothing comes from nothing, and in some cases, even something ...
- AC自动机讲解超详细
begin:2019/5/2 感谢大家支持! AC自动机详细讲解 AC自动机真是个好东西!之前学KMP被Next指针搞晕了,所以咕了许久都不敢开AC自动机,近期学完之后,发现AC自动机并不是很难,特别 ...
- Java 倒入文章显示前n个单词频率
package com_1; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOExc ...
- 企业级Docker镜像仓库Harbor部署与使用
yum install docker 官网地址:https://docs.docker.com/compose/install/ 运行此命令以下载Docker Compose的当前稳定版本 1 sud ...
- HTML+CSS—背景图片、图片定位
设置背景图片格式: background-image: url(img/ic.jpg); 注意点: 如果父容器面积大于背景图片,默认显示该图片整面平铺 设置是否需要平铺属性: background-r ...
- SpringCloud全家桶学习之概览(一)
一.概览 根据百度百科的描述,微服务架构是一项在云中部署应用和服务的新技术.而SpringCloud是微服务架构思想的一个具体实现,它为开发人员提供了构建分布式系统中一些常见模式的工具(服务注册与发现 ...