一、创建一个动态Web项目

♦  注意 :一定要勾选Generate Web.xml deployment descriptor 选项,这个将在Eclipse为你创建一个动态web项目。

二、导入相关jar包

 从Struts2 的lib文件夹中拷贝以下文件到项目的 WEB-INF\lib 文件夹里。

三、创建Aciton类

Action类是Struts2 应用程序的关键,通过它实现大部分的业务逻辑。

public class HelloAction {
private String name;
public String execute() {
System.out.println("访问到了......");
return "success";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

这是一个非常简单的具有“name”属性的类。对于“name”属性,我们用标准的getter和setter方法,以及一个返回“success”字符串的执行方法。

Struts2 框架将创建一个“HelloAction ”类的对象,并调用execute方法来响应用户的动作。你把你的业务逻辑放进execute方法里,最后会返回字符串常量。简单的描述每个URL,你需要实现一个Action类,你也可以用类名直接作为你的动作名,或者使用 struts.xml文件 映射到其他name上。

四、创建视图

hello.jsp

<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Say Hello</title>
</head>
<body>
你好,<font color="red">${name }</font>!<br>
你好,<font color="green"><s:property value="name"/></font>!
</body>
</html>

五、创建主页:

index.jsp

<html>
<head>
<meta charset="utf-8">
<title>Say Hello</title>
</head>
<body>
<h1>Hello World From Struts2</h1>
<form action="SayHello"> <!-- 与struts.xml中的action.name保持一致 -->
<label for="name">请输入您的昵称:</label><br/>
<input type="text" name="name"/>
<input type="submit" value="Say Hello"/>
</form>
</body>
</html>

六、配置文件

♦  struts.xml : 文件需要在Java Resources的 src下创建;

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd"> <!-- 可在 Web App Libraries ——>struts2-core-2.5.20.jar ——>struts-default.xml 中复制 -->
<struts>
<package name="hello" namespace="/" extends="struts-default">
<action name="SayHello" class="pers.uie.action.HelloAction" method="execute">
<result>/hello.jsp</result>
</action>
</package>
</struts>

其中,<package>标签具有以下属性:

定义<action>标签对应于我们想要访问的每个URL,并且使用execute()方法定义一个访问相应的URL时将要访问的类。

<!--action:业务控制器,用于注册业务控制器组件
name:action名称,用于规定Action的访问路径
class:业务控制器组件,用于指定业务控制器对应的类
method:方法,用于指定访问 当前action时要调用的方法 -->

(Results(结果)确定在执行操作后返回到浏览器的内容,而从操作返回的字符串应该是结果的名称。Results有 name和 type属性可选,默认的name值是“success”。)

<!--result:输出组件,用于转发、重定向、直接输出
name:名称,一个action下可以有多个result,彼此不能重名
默认值转发,元素内设置转发的页面 -->

♦  web.xml : 文件需要在WebContent的WEB-INF文件夹下创建;

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

(将Struts2 过滤器映射到 /* ,而不是 /*.action ,这意味着所有的url都会被Struts过滤器解析。)

最后,启动Tomcat服务器并尝试访问URL http://localhost:8080/HelloStruts2/index.jsp ,将会呈现如下图所示的结果:

输入一个“Struts2”值并提交页面,可以看到以下页面:

Eclipse 搭建 Strust2开发环境的更多相关文章

  1. Jdk1.7+eclipse搭建Java开发环境

    Jdk1.7+eclipse搭建Java开发环境 1.    下载jdk1.7 http://www.oracle.com/technetwork/java/javase/downloads/jdk7 ...

  2. 使用Eclipse搭建JavaWeb开发环境的几个基本问题

    Eclipse搭建JavaWeb开发环境 eclipse是一个用于java程序开发的ide软件,tomcat是一个运行javaweb应用的服务器软件,使用eclipse开发javaweb应用的时,首要 ...

  3. 基于eclipse搭建android开发环境-win7 32bit

    基于eclipse搭建android开发环境-win7 32bit 前言:在使用朋友已搭建的Android开发环境时,发现朋友的开发环境版本较低且在update SDk时失败,便决定根据网上文章提示从 ...

  4. Eclipse搭建Android开发环境并运行Android项目

    Eclipse搭建Android开发环境并运行Android项目 (详细) 安装环境: window 10 64位 安装工具: JDK.Eclipse.SDK.ADT 安装步骤: 1.JAVA JDK ...

  5. 【转】使用Eclipse搭建Python开发环境

    因为要进行自动化测试,所以要搭建Python开发环境.这里将使用Eclipse+pyDev进行搭建,在此作为笔记记录下来. 需要的组件: 1.Eclipse SDK 3.7(这里将不再叙述Eclips ...

  6. Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)

    一.搭建Android开发环境 准备工作:下载Eclipse.JDK.Android SDK.ADT插件 下载地址:Eclipse:http://www.eclipse.org/downloads/ ...

  7. MyEclipse10搭建Strust2开发环境

    一.创建一个JavaWeb项目 启动MyEclipse10    ,然后在MyEclipse中创建一个JavaWeb项目,点击[File]---->[New]---->[WebProjec ...

  8. 在ubuntu下使用Eclipse搭建Hadoop开发环境

    一.安装准备1.JDK版本:jdk1.7.0(jdk-7-linux-i586.tar.gz)2.hadoop版本:hadoop-1.1.1(hadoop-1.1.1.tar.gz)3.eclipse ...

  9. Eclipse搭建maven开发环境

    上一篇学习了maven开发环境的搭建,而且手动编写了一个mavenproject,可是这样子效率非常低下.今天带大家学习在eclipse下搭建maven开发环境. 经常使用的maven命令 mvn c ...

随机推荐

  1. PyInstaller Extractor安装和使用方法

    PyInstaller Extractor是可以提取出PyInstaller所创建的windows可执行文件的资源内容. 关于PyInstaller的介绍:PyInstaller安装使用方法 使用Py ...

  2. Linux 修改本地时间 (centos为例)

    1.  tzselect [root@xxxx etc]# tzselect --- 选择时区命令 Please identify a location so that time zone rules ...

  3. 基于C#的socket编程的TCP异步实现

    一.摘要 本篇博文阐述基于TCP通信协议的异步实现. 二.实验平台 Visual Studio 2010 三.异步通信实现原理及常用方法 3.1 建立连接 在同步模式中,在服务器上使用Accept方法 ...

  4. MySQL CONCAT opposite

    csv - What is the opposite of GROUP_CONCAT in MySQL? - Stack Overflowhttps://stackoverflow.com/quest ...

  5. java内存模型详解

    对于本篇文章,将从四个概念来介绍:内存模型基础,重排序,顺序一致性和happens-before 1.内存模型基础 在并发编程中,有两个关键问题:线程之间如何通信和如何同步.由此而引出了两种并发模型: ...

  6. monkey事件简介

    操作事件简介 Monkey所执行的随机事件流中包含11大事件,分别是触摸事件.手势事件.二指缩放事件.轨迹事件.屏幕旋转事件.基本导航事件.主要导航事件.系统按键事件.启动Activity事件.键盘事 ...

  7. 自定义组件的properties和data

    // components/epsoide/index.js Component({ /** * 组件的属性列表 */ properties: { index: { type: Number //va ...

  8. ADT SDK Manager启动时一闪而过

    原因为使用了Android Studio的绿色JRE,必须要安装安装版JDK或者JRE,绿色版JRE放在ADT目录虽然能启动ADT但是不能启动SDK Manager

  9. axios页面无刷新提交from表单

    页面部分大概意思一下 <form method="post" enctype="multipart/form-data"> ... </for ...

  10. 用Pytorch训练线性回归模型

    假定我们要拟合的线性方程是:\(y=2x+1\) \(x\):[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] \(y\):[1, 3, 5, 7, ...