在action中继承ActionSupport 类,重写execute方法

所用到的 jar 包

1.配置web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"><display-name>Struts Blank</display-name><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list>
</web-app>

2.action接口

package action;import com.opensymphony.xwork2.ActionSupport;@SuppressWarnings("serial")
public class SumActionSupport extends ActionSupport {private double x;private double y;private double sum;public String execute() {String forward = "-";sum = x + y;if (sum > 0)forward = "+";return forward;}public SumActionSupport() {super();// TODO Auto-generated constructor stub}public SumActionSupport(double x, double y) {super();this.x = x;this.y = y;this.sum = x + y;}public double getX() {return x;}public void setX(double x) {this.x = x;}public double getY() {return y;}public void setY(double y) {this.y = y;}public double getSum() {return sum;}public void setSum(double sum) {this.sum = sum;}}

3.配置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.enable.DynamicMethodInvocation" value="false" /><constant name="struts.devMode" value="true" /> --><package name="default" namespace="/" extends="struts-default"><!--  <default-action-ref name="index" /><global-results><result name="error">/WEB-INF/jsp/error.jsp</result></global-results><global-exception-mappings><exception-mapping exception="java.lang.Exception" result="error"/></global-exception-mappings> --><action name="opadd" class="action.SumActionSupport" method="execute"><result name="+">p.jsp</result><result name="-">n.jsp</result></action></package><include file="example.xml"/><!-- Add packages here --></struts>

由于action中的execute为默认方法,method属性可以省略

4.input.jsp页面、p.jsp页面、n.jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><form action="opadd" method="post">加数:<input type="text" name="x">加数:<input type="text" name="y"><input type="submit" value="提交"></form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>${x}+ ${y}= ${sum}
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>${x}+ ${y}= ${sum}
</body>
</html>

继承ActionSupport 实现Action与属性驱动传参相关推荐

  1. vue路由传参的三种方式/含页面刷新参数丢失解决方案(详细)

    vue路由传参的三种方式以及页面刷新参数丢失问题 一.路由传参的三种方式 1.传参方式一:params传参 2.传参方式二:路由属性配置传参 3.传参方式三:query传参 二.三种传递方式的区别 一 ...

  2. Vue路由传参三种方式

    Vue路由传参三种方式 params传参 路由属性配置传参 query传参 一.params传参 this.$router.push({ name:"admin", //这里的pa ...

  3. class传参 python_Python类的概念、定义、属性、继承

    1.面向对象(Object Oriented,OO)概念 面向对象,是我们编程的一种思维. 早期的计算机编程是基于面向过程的方法,例如实现算术运算1+1+2 = 4,通过设计一个算法就可以解决当时的问 ...

  4. Struts2学习日记(二)简单的Struts2登陆实现(Action继承ActionSupport类)

    功能实现:实现登陆功能,输入用户名和密码,如果用户名不为hello或者密码不为world,便返回登陆页并提示错误,否则显示登陆结果. 1.打开MyEclipse,创建一个webProject项目. 2 ...

  5. #十二、编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三、编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定

    #十二.编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三.编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定 ...

  6. Struts2实现Preparable接口和【struts2】继承ActionSupport类

    Struts2实现Preparable接口 实现preparable接口,实现public void prepare() throws Exception 方法.当你访问某问action指定方法之前, ...

  7. Strut2的属性驱动,模型驱动的理解

    因为在struts1的版本中,属性的拦截以及控制的处理是被封装为两个对立的ActionForm.Action来获取HttpServerRequest的参数.控制访问MAPPING的.而在Struts2 ...

  8. (九)模型驱动和属性驱动

    出于结构清晰的考虑,应该采用单独的Model实例来封装请求参数和处理结果,这就是所谓的模型驱动, 所谓模型驱动,就是使用单独的JavaBean来贯穿整个MVC流程. 所谓属性驱动,就是使用属性来作为贯 ...

  9. Struts2中Action的属性接收参数

    Struts2中Action的属性接收参数,有三种传递并接收参数的方式,第一种是在Action添加成员属性接收参数,第二种是域模型,就是利用对象域来进行传递和接收参数,第三种是ModelDriven接 ...

  10. stucts2 页面上的值如何与Action的属性值对应

    在Strut2中,页面的数据和Action有两种基本对应方式:分别是:属性驱动(FieldDriven)和模型驱动(ModelDriven).属性驱动又分为两种情况:一种是基本数据类型的属性对应:另一 ...

最新文章

  1. 批量将PPM格式图片转化为JPG格式
  2. 2012,字王强势回归
  3. JSF----事件处理----实时事件
  4. php 755,chmod 命令——chmod 755与 chmod 4755区别_PHP教程
  5. 使用NLTK实现stemming
  6. 微信支付功能和安装开发软件顺序
  7. xp计算机启动检测硬盘,取消WinXP开机自检技巧五则
  8. vim 修改注释颜色 tab键
  9. 此博客更新较慢,主要用于微信公众号“申龙斌的程序人生”的备份了
  10. The following packages have unmet dependencies
  11. 96Boards MIPI CSI Camera Mezzanine
  12. 【分享】微信公众号在 “集简云平台“ 集成应用的常见问题与解决方案
  13. 豆芽的生长过程观察日记-绿豆发芽观察日记7天-2021年
  14. 跟着鸟哥学linux【二】
  15. Apache Flink介绍、架构、原理以及实现
  16. Python 08-文件读写
  17. hyper-v虚拟机常用命令
  18. R basics: R语言修改默认显示语言
  19. 利用CMD命令有效的查病毒***方法
  20. 前端判断文件后缀名_JS 获取文件后缀,判断文件类型(比如是否为图片格式)

热门文章

  1. 计算机VB中清除按钮,计算机vb程序设计时计算器清除的代码怎么写
  2. CSS系列之字体相关的样式
  3. css怎么去掉字体样式,css怎么去掉字体粗体样式
  4. java多商户商城系统源码下载
  5. 单商户商城系统功能拆解13—分类管理
  6. 计算机中丢失vulkan-1.dll,vulkan-1.dll
  7. bat批处理常用命令
  8. opera官方教程 团队
  9. 《线性代数》同济六版 总结
  10. linux下cmake安装配置