一个简单的struts2项目
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项目的更多相关文章
- 如何创建一个简单的struts2程序
如何创建一个简单的Struts2程序 “计应134(实验班) 凌豪” 1.创建一个新的Web项目test(File->new->Web Project) 2.Struts2框架的核心配置文 ...
- 一个简单的JUnit项目
本人一直很喜欢JAVA,可是真正接触到JUnit也不过半年.由于公司进行网页测试,采用的是 JUnit+selenium的方式搭建的测试框架,然后采用JAVA语言编写,所以本人也好好研究了一下JUni ...
- 搭建Vue.js环境,建立一个简单的Vue项目
基于vue-cli快速构建 Vue是近年来比较火的一个前端框架,所以搭建Vue.js环境,要装webpack,vue-cli,Vue 安装webpack命令如下 $ cnpm install webp ...
- 通过myclipse建立一个简单的Hibernate项目(PS:在单元测试中实现数据的向表的插入)
Hibernate的主要功能及用法: Ⅰ.Hibernate封装了JDBC,使Java程序员能够以面向对象的思想对数据库进行操作 Ⅱ.Hibernate可以应用于EJB的J2EE架构,完成数据的持久化 ...
- Django入门第一步:构建一个简单的Django项目
Django入门第一步:构建一个简单的Django项目 1.简介 Django是一个功能完备的Python Web框架,可用于构建复杂的Web应用程序.在本文中,将通过示例跳入并学习Django.您将 ...
- 用 Eclipse 创建一个简单的web项目
Eclipse neon 汉化版 ; 1;右击新建 --> 选择 动态Web项目 2: 填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomca ...
- 使用一个Python脚本来运行一个简单的Django项目
创建视图 Django是一个模型-模板-视图(model-template-view,MTV)框架. 视图部分通常检查看HTTP给出的请求和查询或者结构,这些信息是发送到表示层的数据. 我们在 hel ...
- JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP、IOC)
接上篇<JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构.调试.部署>,通过一个简单的JSP WEB网站了解了JAVA WEB相关的知识,比如:Ser ...
- 一个简单的nodejs项目(cat-names)分析
https://github.com/sindresorhus/cat-names 一个非常简单的nodejs项目,用来方便的获取猫猫的名字: 安装: npm install --save cat-n ...
随机推荐
- vue 项目在 IE11 里呈现空白,不兼容的问题解决方案
我用vue 2.6.11版本编写的项目,在谷歌浏览器上运行的好好地,但是放到ie11浏览器上却是一片空白. 这个问题遇到的时候,我是蒙蔽了,抓紧去搜了搜百度,百度上的答案倒是都很统一. 都是说ie不兼 ...
- java42
1.Random类 随机生成某个整数 Random r = new Random(); System.out.println(r.nextInt()); 伪随机数:第一次打印为随机,再次运行,数字将保 ...
- 去除openwrite.cn博客验证码限制
相信有的小伙伴肯定遇到过如下这种情况,但是作为老白嫖党肯定是 「下次一定」 了,所以今天我们来看看如何不关注公众号实现 「阅读原文」. 如何解决呢? 1.通过 F12 打开控制台,切换至 Elemen ...
- pom文件中<dependencies>和<dependencyManagement>的区别
在父pom中,如果使用了<dependencies>标签,那么在该标签体中的所有jar包,即使子工程中没有写这些依赖,依旧会引用. 如果使用了<dependencyManagemen ...
- moviepy音视频剪辑基类VideoClip的write_gif方法opt、fuzz、dispose、colors、loop等参数的作用
☞ ░ 前往老猿Python博文目录 ░ moviepy音视频剪辑模块的视频剪辑基类write_gif方法用于将视频剪辑输出到gif文件,调用语法如下: def write_gif(self, fil ...
- PyQt(Python+Qt)学习随笔:QListView的modelColumn属性及困惑
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.modelColumn介绍 QListView的modelColumn属性用于控制视图中展现mo ...
- go学习49天
写文件操作 func OpenFile(name string,flag int,perm FileMode) (file *File,err error)
- new一个对象时,会经历哪些步骤
(1)创建一个对象:(2)将构造函数的作用域赋值给新对象(因此this就指向了这个新对象):(3)执行构造函数中的代码(为这个新对象添加属性):(4)返回新对象
- 题解-CF348E Pilgrims
题面 CF348E Pilgrims 有一棵 \(n\) 个点的 带权 树和 \(m\) 个关键点,要求杀了一个不关键的点,满足最多的关键点到离它最远的所有关键点的路径都被打断.求可以满足的最多关键点 ...
- SQL盲注、SQL注入 - SpringBoot配置SQL注入过滤器
1. SQL盲注.SQL注入 风险:可能会查看.修改或删除数据库条目和表. 原因:未对用户输入正确执行危险字符清理. 固定值:查看危险字符注入的可能解决方案. 2. pom.xml添加依赖 ...