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. python应用(5):变量类型与数据结构

    如前所说,写程序如同给算法写壳,而算法就是流程,所以流程是程序的主角(但这个流程不一定要你来设计).在程序中,为了配合流程(算法)的实现,除了顺序.分支与循环语句的使用,还要借助"变量&qu ...

  2. 通过Dbeaver创建表格的时候,设置主键

    通过Dbeaver创建表格的时候,设置主键 Dbeaver介绍: ​ 这是一个开源的数据库连接工具,你需要安装jre才可以使用这个软件 在使用Dbeaver创建表的时候,会发现,不能直观地设置主键 这 ...

  3. 第4.2节 神秘而强大的Python生成器精讲

    一. 生成器(generator)概念 生成器是一个特殊的迭代器,它保存的是算法,每次调用next()或send()就计算出下一个元素的值,直到计算出最后一个元素,没有更多的元素时,抛出StopIte ...

  4. PyQt(Python+Qt)学习随笔:QListWidget获取当前选中项的selectedItems方法

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QListWidget的selectedItems方法返回列表部件中所有选中项的一个列表,调用语法如 ...

  5. 第九章、Qt Designer可视化设计界面布局组件介绍

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 在Qt Designer中,在左边部件栏的提供了界面布局相关部件,如图: 可以看到共包含有 ...

  6. 第一章、PyQt的简介、安装与配置

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 第一章.PyQt的简介.安装与配置 一.引言 当朋友向我推荐PyQt时,老猿才知道有这样一个在Pyt ...

  7. flask实现分类搜索的小测试

    最新学长要求实现一个搜索的功能呢,也费了一点功夫.这个案例也没有学长写的好,比学长的实现差了不少,待我仔细研究习再发出相应代码 项目要求,搜索语法如下: titile: xxx #搜索titile的所 ...

  8. C#获取引用组件的版本信息

    /// <summary>        /// 当前目录下文件版本        /// </summary>        public void FilesVersion ...

  9. MarkDown的练习_Java开发学习路径

    MarkDown的练习 语言学习 C/C++语言 Java语言 基础四大件 数据结构与算法 操作系统 计算机网络 设计模式 数据库/SQL 私人令牌:42bb654f53941d5692e98b35f ...

  10. 深入理解Java虚拟机(四)——HotSpot垃圾收集器详解

    垃圾收集器 新生代收集器 1.Serial收集器 特点: 单线程工作,收集的时候就会停止其他所有工作线程,用户不可知不可控,会使得用户界面出现停顿. 简单高效,是所有收集器中额外内存消耗最少的. 没有 ...