Struts2学习笔记 - Action篇定义逻辑Action
有三种方法可以使一个Action处理多个请求
- 动态方法调用DMI
- 定义逻辑Acton
- 在配置文件中使用通配符
这文章就谈论一下定义逻辑Action
这里主要关注的是struts.xml配置文件,一般情况下,我们会这样编写一个Action,当请求的名字为login的时候,就会调用LoginAction的类里面的execute方法
<action name="login" class="struts2.action.LoginAction"><result name="success">/success.jsp</result><result name="input">/login2.jsp</result> </action>
在这里我们只需要多个一个method的属性就能实现处理多请求,如下图,这样我们就可以在实现类DMIAction中分别请求两个不同的方法login和register实现不同的逻辑
<action name="D_Login" class="struts2.action.DMIAction" method="login"><result name="success">RegisterSuccess.jsp</result> </action><action name="D_Register" class="struts2.action.DMIAction" method="register"><result name="success">RegisterSuccess.jsp</result> </action>
下面是完整例子
1.两个页面分别请求两个不同的请求,D_Login和D_Register
//DMI_login.jsp <%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <%@taglib prefix="s" uri="/struts-tags"%> <!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>Insert title here</title> </head> <body><h4>请输入</h4><s:form action="D_Login"><s:textfield name="username" label="User Name" /><s:password name="password" label="Password" /><s:submit value="Login" /></s:form></body> </html>
//DMI_register.jsp <%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <%@taglib prefix="s" uri="/struts-tags"%> <!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>Insert title here</title> </head> <body><h4>注册</h4><s:form action="D_Register"><s:textfield name="username" label="User Name" /><s:password name="password" label="Password" /><s:submit value="Register" /></s:form> </body> </html>
2.struts.xml配置
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"><struts><constant name="struts.enable.DynamicMethodInvocation" value="true"/><package name="default" extends="struts-default"><action name="D_Login" class="struts2.action.DMIAction" method="login"><result name="success">RegisterSuccess.jsp</result></action><action name="D_Register" class="struts2.action.DMIAction" method="register"><result name="success">RegisterSuccess.jsp</result></action></package> </struts>
3.Action类
package struts2.action;import java.util.Map;import com.opensymphony.xwork2.ActionSupport;public class DMIAction extends ActionSupport {/*** */private static final long serialVersionUID = 1L;public String login() {return SUCCESS;}public String register() {return SUCCESS;}private String username;private String password;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}private Map sessionMap;private Map applicationMap;public void setSession(Map sessionMap) {this.sessionMap = sessionMap;}public void setApplication(Map applicationMap) {this.applicationMap = applicationMap;} }
转载于:https://www.cnblogs.com/oscar1987121/p/6077947.html
Struts2学习笔记 - Action篇定义逻辑Action相关推荐
- 坐标变换学习笔记—代码篇Matlab
坐标变换学习笔记-代码篇Matlab 四元数 →\to→ 旋转矩阵 quat2dcm quat2rotm 四元数 →\to→ 欧拉角 quat2angle quat2eul 旋转矩阵 →\to→ 四元 ...
- Vue学习笔记进阶篇——Render函数
本文为转载,原文:Vue学习笔记进阶篇--Render函数 基础 Vue 推荐在绝大多数情况下使用 template 来创建你的 HTML.然而在一些场景中,你真的需要 JavaScript 的完全编 ...
- python数据挖掘学习笔记】十六.逻辑回归LogisticRegression分析鸢尾花数据
但是很多时候数据是非线性的,所以这篇文章主要讲述逻辑回归及Sklearn机器学习包中的LogisticRegression算法 #2018-03-28 16:57:56 March Wednesday ...
- MySQL学习笔记-基础篇1
MySQL 学习笔记–基础篇1 目录 MySQL 学习笔记--基础篇1 1. 数据库概述与MySQL安装 1.1 数据库概述 1.1.1 为什么要使用数据库 1.2 数据库与数据库管理系统 1.2.1 ...
- C# 学习笔记入门篇(上)
文章目录 C# 学习笔记入门篇 〇.写在前面 Hello World! 这篇学习笔记适合什么人 这篇学习笔记到底想记什么 附加说明 一.命名空间 "进入"命名空间 嵌套的命名空间. ...
- 数据库MySQL学习笔记高级篇(周阳)
数据库MySQL学习笔记高级篇 1. mysql的架构介绍 mysql简介 高级Mysql mysqlLinux版的安装 mysql配置文件 mysql逻辑架构介绍 mysql存储引擎 2. 索引优化 ...
- python分析鸢尾花数据_python数据挖掘学习笔记】十六.逻辑回归LogisticRegression分析鸢尾花数据...
但是很多时候数据是非线性的,所以这篇文章主要讲述逻辑回归及Sklearn机器学习包中的LogisticRegression算法 #2018-03-28 16:57:56 March Wednesday ...
- Redis学习笔记②实战篇_黑马点评项目
若文章内容或图片失效,请留言反馈.部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 资料链接:https://pan.baidu.com/s/1189u6u4icQYHg_9_7ovWmA( ...
- [mmu/cache]-ARM MMU的学习笔记-一篇就够了
★★★ 个人博客导读首页-点击此处 ★★★ . 说明: 在默认情况下,本文讲述的都是ARMV8-aarch64架构,linux kernel 64位 . 相关文章 1.ARM cache的学习笔记-一 ...
最新文章
- 虚商烦恼多?不在怕的!你距离享受高效虚商控制台只差一步的距离
- f-BRS: Rethinking Backpropagating Refinement for Interactive Segmentation解析
- webService、webSocket、socket、http之间的区别
- 《算法竞赛进阶指南》数论篇
- 计算机网络利用率是什么_当我们在谈论高并发的时候究竟在谈什么?
- 1225 数数字
- Nginx(6)-配置基于域名的虚拟主机
- java接口构造方法吗_Java中抽象类和接口中有构造方法吗?
- PCM data flow - 3 - ASoC codec driver
- 基于mysql的全文索引
- Matlab 实现信号滤波
- ubuntu20安装teamview15
- MAC OS修改hosts
- SAP 月末结账步骤
- Excel数据分析(一)公式错误值与解决办法
- 你知道做一个网站要多少钱网站怎么运营能赚钱
- 【软件工程】-软件过程
- 初学linux(-)
- usaco4.4.1 Shuttle Puzzle
- CSS(b站学习记录)