struts.xml 放在src目录下

<?xml version="1.0" encoding="UTF-8"?>
<struts>
<package name="struts2 " namespace="/" extends="struts-default">
<action name="sum" class="com.umgsai.test.FirstAction">
<result name="positive ">/positive.jsp</result>
<result name="negative ">/negative.jsp</result>
</action>
</package>
</struts>

web.xml中添加配置

<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>

lib目录下添加jar包

  1. asm-x.x.jar

  2. asm-commons-x.x.jar

  3. asm-tree-x.x.jar

  4. commons-io-X.X.X.jar

  5. commons-lang3-X.X.X.jar

  6. commons-fileupload-X.X.X.jar

  7. freemarker-X.X.X.jar

  8. javassist-X.X.X.jar

  9. ognl-X.X.X.jar

  10. struts2-core-X.X.X.X.jar

  11. xwork-core-X.X.X.jar

java文件

package com.umgsai.test;  

import com.opensymphony.xwork2.ActionSupport;  

publicclass FirstAction extends ActionSupport {  

/**

    *  

    */

privatestaticfinallong serialVersionUID = 1L;  

privateint operand1;  

privateint operand2;  

public String execute() throws Exception {  

if (getSum() >= 0) // 如果代码数和是非负整数,跳到positive.jsp页面

       {  

return"positive";  

       } else// 如果代码数和是负整数,跳到negative.jsp页面

       {  

return"negative";  

       }  

   }  

publicint getOperand1() {  

return operand1;  

   }  

publicvoid setOperand1(int operand1) {  

       System.out.println(operand1);  

this.operand1 = operand1;  

   }  

publicint getOperand2() {  

return operand2;  

   }  

publicvoid setOperand2(int operand2) {  

       System.out.println(operand2);  

this.operand2 = operand2;  

   }  

publicint getSum() {  

return operand1 + operand2; // 计算两个整数的代码数和

   }  

}

sum.jsp文件

<%@ page language="java"import="java.util.*"pageEncoding="GBK"%>

<%@ taglib prefix="s"uri="/struts-tags"%>

<%  

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>

<basehref="<%=basePath%>">

<title>输入操作数</title>

<metahttp-equiv="pragma"content="no-cache">

<metahttp-equiv="cache-control"content="no-cache">

<metahttp-equiv="expires"content="0">

<metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">

<metahttp-equiv="description"content="This is my page">

<!--

   <link rel="stylesheet" type="text/css" href="styles.css">

   -->

</head>

<body>

       求代数和  

<br/>

<s:formaction="sum"namespace="/">

<s:textfieldname="operand1"label=" 操作数1"/>

<s:textfieldname="operand2"label=" 操作数2"/>

<s:submitvalue="代数和"/>

</s:form>

</body>

</html>

positive.jsp页面

<%@ page language="java"import="java.util.*"pageEncoding="GBK"%>

<%@ taglib prefix="s"uri="/struts-tags"%>

<%  

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>

<basehref="<%=basePath%>">

<title>显示代数和</title>

<metahttp-equiv="pragma"content="no-cache">

<metahttp-equiv="cache-control"content="no-cache">

<metahttp-equiv="expires"content="0">

<metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">

<metahttp-equiv="description"content="This is my page">

<!--

   <link rel="stylesheet" type="text/css" href="styles.css">

   -->

</head>

<body>

       代数和为非负整数  

<h1>

<s:propertyvalue="sum"/>

</h1>

</body>

</html>

negative.jsp页面

<%@ page language="java"import="java.util.*"pageEncoding="GBK"%>

<%@ taglib prefix="s"uri="/struts-tags"%>

<%  

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>

<basehref="<%=basePath%>">

<title>显示代数和</title>

<metahttp-equiv="pragma"content="no-cache">

<metahttp-equiv="cache-control"content="no-cache">

<metahttp-equiv="expires"content="0">

<metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">

<metahttp-equiv="description"content="This is my page">

<!--

   <link rel="stylesheet" type="text/css" href="styles.css">

   -->

</head>

<body>

       代数和为负整数  

<h1>

<s:propertyvalue="sum"/>

</h1>

</body>

</html>
------------------------------------------------------------------------------

struts2基本配置的更多相关文章

  1. Struts2 基本配置

    Struts2是一个优秀的MVC框架,也是我比较喜欢用的框架.它个各种配置基本都可以集中在一个xml文档中完成.现在让我们看看如何简单几步实现常用功能. 一.搭建Struts2的开发环境 1)首先是利 ...

  2. Struts2 XML配置详解

    struts官网下载地址:http://struts.apache.org/   1.    深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1.    包配置: S ...

  3. struts2 action配置时 method 省略不写 默认执行方法是父类ActionSuppot中的execute()方法

    struts2 action配置时 method 省略不写 默认执行方法是父类ActionSuppot中的execute()方法

  4. struts2环境配置

    struts2环境配置 struts2框架,大多数框架都在使用.由于工作需要,开始做Java项目.先学个struts2. 一.下载struts2 有好多版本,我下载的是struts-2.2.1.1. ...

  5. 在Struts2中配置Action

    在Struts2中配置Action <package>: 1.定义Action使用<package>标签下的<action>标签完成,一个<package&g ...

  6. Struts2的配置

    Struts2的配置 Struts2可以通过Convention插件管理Action和结果映射,也可以通过使用XML文件进行管理,这两种方式各有好处:使用Convention插件管理减少了XML文件的 ...

  7. Struts2的配置和一个简单的例子

    Struts2的配置和一个简单的例子 笔记仓库:https://github.com/nnngu/LearningNotes 简介 这篇文章主要讲如何在 IntelliJ IDEA 中使用 Strut ...

  8. 1-1 struts2 基本配置 struts.xml配置文件详解

    详见http://www.cnblogs.com/dooor/p/5323716.html 一. struts2工作原理(网友总结,千遍一律) 1 客户端初始化一个指向Servlet容器(例如Tomc ...

  9. spring+hibernate+struts2零配置整合

    说句实话,很久都没使用SSH开发项目了,但是出于各种原因,再次记录一下整合方式,纯注解零配置. 一.前期准备工作 gradle配置文件: group 'com.bdqn.lyrk.ssh.study' ...

  10. struts2基本配置详解2

    接上篇struts2基本配置详解,还有一些配置没有讲到,下面将继续. struts.xml <package name="com.amos.web.action" names ...

随机推荐

  1. CAN开发中遇到的奇怪问题

    问题背景: 之前在做USBCAN2开发过程中,遇到一个奇葩问题,当我们加上其中某一句代码时,我们的程序会走不下去,得不到数据,而且在调试的过程中,你也不能暂停,不然,你也得不到数据.后来参考网上一篇帖 ...

  2. 淘宝账号基于OAuth2.0的登录验证授权登陆第三方网站

    首先得有一个注册的appkey和App Secret   该流程分三个步骤: 第一步:通过用户授权获取授权码Code: 第二步:用上一步获取的Code和应用密钥(AppSecret)通过Https P ...

  3. linux修改网卡名称

    本文转载自江一<linux修改网卡名称> 终端输入:vi /etc/udev/rules.d/70-persistent-net.rules 出现以下文件 # This file was ...

  4. 用python简单处理图片(2):图像通道\几何变换\裁剪

    一.图像通道 1.彩色图像转灰度图 from PIL import Image import matplotlib.pyplot as plt img=Image.open('d:/ex.jpg') ...

  5. Win7上防火墙开放FTP服务以及ping解决方案(zz)

    1.windows 防火墙开放ftp服务 The following 4 steps will allow both non-secure and SSL FTP traffic through fi ...

  6. 关于使用Css设置Canvas画布大小的问题

    问题分析 我们在调整画布大小时,希望画布中的图形保持不变,只是改变画布本身的大小.但是如果使用Css设置画布大小,则会出现问题. 问题描述 如果使用Css设置Canvas画布的大小,则导致画布按比例缩 ...

  7. 转 Windows server 2008 搭建VPN服务

    VPN英文全称是“Virtual Private Network”,就是“虚拟专用网络”.   虚拟专用网络就是一种虚拟出来的企业内部专用线路.这条隧道可以对数据进行几倍加密达到安全使用互联网的目的. ...

  8. 数据库SQL Server DAC 导入导出数据到SQL Azure问题

    对Export data-tier application报错的处理 Error:SQL71564 这个问题是数据库中一些对象如MS_Description,MS_DiagramPane1不支持DAC ...

  9. js回调

    请先看着一片blog: http://www.jb51.net/article/53027.htm 回调的两种使用方法: 1.一般的传函数.2.匿名函数 3.使用回调函数再使用call方法. 判断一个 ...

  10. 第二十课:js中如何操作元素的属性系统

    本章的内容有点复杂,我将用简单的方式来介绍重要的东西,不重要的东西,这里就不讲了,讲了也毛用. 通常我们把对象的非函数成员叫做属性.对元素节点来说,其属性大题分为两大类,固有属性和自定义属性.固有属性 ...