1.新建一个 Dynamic Web Project 项目

2.配置 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.devMode" value="true"></constant>

<!--pakage标签
作用:给访问的action进行分包管理,吧配置文件按照面向对象管理
属性:name:指定包的名称,必须写,必须唯一
extends:指定当前包的父包,子包自动具备父包所指定的配置,我们的包一般都需要继承struts-default

-->
<package name="p1" extends="struts-default">
<action name="hello" class="com.action.HelloAction" method="getHello">
<result name="sucess" >/sucess.jsp</result>
</action>
<action name="hello2" class="com.action.HelloAction2" method="execute" >
<result name="success" >/sucess.jsp</result>
</action>
</package>
<!-- action的三种形式-->
<!-- <package name="user" extends="struts-default">
<action name="addUser" class="com.action.UserAction" method="addUser">
<result name="success">/sucess.jsp</result>
</action>
<action name="updateUser" class="com.action.UserAction" method="updateUser">
<result name="success">/sucess.jsp</result>
</action>
<action name="deleteUser" class="com.action.UserAction" method="deleteUser">
<result name="success">/sucess.jsp</result>
</action>
<action name="findUser" class="com.action.UserAction" method="findUser">
<result name="success">/sucess.jsp</result>
</action>
</package> -->
<!-- 使用通配符-->
<!-- <package name="user" extends="struts-default">
<action name="*" class="com.action.UserAction" method="{1}">
<result name="success">/sucess.jsp</result>
</action>
</package> -->
<!-- 开启动态调用-->
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
<!-- -->
<package name="user" extends="struts-default">
<action name="user" class="com.action.UserAction" >
<result name="success">/sucess.jsp</result>
</action>
</package>
</struts>

web.xml文件配置==================

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>textstrutsAction</display-name>
<!-- struts2 过滤器核心配置-->
<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>
</web-app>

jsp文件=================

index.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>

<title>这是一个struts2</title>
</head>
<body>
<%-- <a href="${pageContext.request.contextPath}/addUser">添加</a>
<hr/>
<a href="${pageContext.request.contextPath}/updateUser">修改</a>
<hr/>
<a href="${pageContext.request.contextPath}/deleteUser">删除</a>
<hr/>
<a href="${pageContext.request.contextPath}/findUser">查找</a> --%>
<a href="${pageContext.request.contextPath}/user!addUser">添加</a>
<hr/>
<a href="${pageContext.request.contextPath}/user!updateUser">修改</a>
<hr/>
<a href="${pageContext.request.contextPath}/user!deleteUser">删除</a>
<hr/>
<a href="${pageContext.request.contextPath}/user!findUser">查找</a>
</body>
</html>

sucess.jsp文件===

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>执行结果</title>
</head>
<body>
执行成功

</body>
</html>

3.action类

package com.action;

import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport{
public String addUser() {
System.out.println("11111");
return "success";
}
public String updateUser() {
System.out.println("22222");
return "success";
}
public String deleteUser() {
System.out.println("3333333333");
return "success";
}
public String findUser() {
System.out.println("4444444");
return "success";
}

一个简单的struts2项目的更多相关文章

  1. 如何创建一个简单的struts2程序

    如何创建一个简单的Struts2程序 “计应134(实验班) 凌豪” 1.创建一个新的Web项目test(File->new->Web Project) 2.Struts2框架的核心配置文 ...

  2. 一个简单的JUnit项目

    本人一直很喜欢JAVA,可是真正接触到JUnit也不过半年.由于公司进行网页测试,采用的是 JUnit+selenium的方式搭建的测试框架,然后采用JAVA语言编写,所以本人也好好研究了一下JUni ...

  3. 搭建Vue.js环境,建立一个简单的Vue项目

    基于vue-cli快速构建 Vue是近年来比较火的一个前端框架,所以搭建Vue.js环境,要装webpack,vue-cli,Vue 安装webpack命令如下 $ cnpm install webp ...

  4. 通过myclipse建立一个简单的Hibernate项目(PS:在单元测试中实现数据的向表的插入)

    Hibernate的主要功能及用法: Ⅰ.Hibernate封装了JDBC,使Java程序员能够以面向对象的思想对数据库进行操作 Ⅱ.Hibernate可以应用于EJB的J2EE架构,完成数据的持久化 ...

  5. Django入门第一步:构建一个简单的Django项目

    Django入门第一步:构建一个简单的Django项目 1.简介 Django是一个功能完备的Python Web框架,可用于构建复杂的Web应用程序.在本文中,将通过示例跳入并学习Django.您将 ...

  6. 用 Eclipse 创建一个简单的web项目

    Eclipse neon 汉化版 ; 1;右击新建 -->  选择 动态Web项目 2:  填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomca ...

  7. 使用一个Python脚本来运行一个简单的Django项目

    创建视图 Django是一个模型-模板-视图(model-template-view,MTV)框架. 视图部分通常检查看HTTP给出的请求和查询或者结构,这些信息是发送到表示层的数据. 我们在 hel ...

  8. JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP、IOC)

    接上篇<JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构.调试.部署>,通过一个简单的JSP WEB网站了解了JAVA WEB相关的知识,比如:Ser ...

  9. 一个简单的nodejs项目(cat-names)分析

    https://github.com/sindresorhus/cat-names 一个非常简单的nodejs项目,用来方便的获取猫猫的名字: 安装: npm install --save cat-n ...

随机推荐

  1. JDK7HashMap

    JDK7HashMap 成员变量 HashMap中定义了非常多的成员变量以及常量,各成员变量含义具体如下: //默认初始化长度-16 static final int DEFAULT_INITIAL_ ...

  2. 团队作业第三次 —— UML设计

    这个作业要求在哪里 https://edu.cnblogs.com/campus/fzzcxy/2018SE2/homework/11366 这个作业的目标 <团队一起设计UML图> 团队 ...

  3. PyQt(Python+Qt)学习随笔:树型部件QTreeWidget提供的currentItem当前项操作访问方法

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 当前项是指当前鼠标和键盘焦点所在项,在项可以进行选择操作时,当前项可以是选中状态,也可以是未选中状态 ...

  4. PyQt(Python+Qt)学习随笔:Model/View中的枚举类 Qt.MatchFlag的取值及含义

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 枚举类 Qt.MatchFlag描述在模型中搜索项时可以使用的匹配类型,它可以在QStandardI ...

  5. [BJDCTF 2nd]duangShell 反弹shell

    [BJDCTF 2nd]duangShell   [BJDCTF 2nd]duangShell 点击进去之后提示我们swp源代码泄露,访问http://xxx/.index.php.swp下载该文件 ...

  6. 【软件测试部署基础】maven的认识

    最近部门分享测试环境部署相关内容,在同事的分享下,学到了很多新的知识点,也是我们在测试环境部署的时候非常重要的一些基本的知识点,当你系统的去了解了一下,你会发现后端在maven相关的点上有个清晰的了解 ...

  7. 深入理解C#中的异步(一)——APM模式EAP模式

    深入理解C#中的异步(一)--APM模式EAP模式 目录 深入理解C#中的异步(一)--APM模式EAP模式 1 使用异步编程的原因 2 异步编程模式 2.1 APM模式 2.1.1 APM模式示例代 ...

  8. C++详解(8-9)

    八. C++函数的高级特性 对比于C语言的函数,C++增加了重载(overloaded).内联(inline).const和virtual四种新机制.其中重载和内联机制既可用于全局函数也可用于类的成员 ...

  9. javascript编写原则

    1.不要在同一行声明多个变量2.使用===或!==来比较3.使用字面量的方式来创建对象.数组,替代new Array这种形式4.switch语句必须要带default分支5.fon-in循环中的变量, ...

  10. Codeforces Edu Round 56 A-D

    A. Dice Rolling 把\(x\)分解为\(a * 6 + b\),其中\(a\)是满6数,\(b\)满足\(1 <= b < 6\),即可... #include <io ...