本教程基于netbeans6.9.1,tomcat是netbeans自带的6.0.26,已经经过测试。
1 新建java
web项目,在WEB-INF下新建classes文件夹和lib文件夹。在struts框架的库里找到如下所示的库文件放入lib下如图
在classes文件夹下新建struts.xml文件,文件内容如下
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="struts2" namespace="/" extends="struts-default">
</package>
<!-- Add packages here -->
</struts>
2 修改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>
3 在web的根目录下的index,jsp文件里是如下内容
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Basic Struts 2 Application - Welcome</title>
</head>
<body>
<h1>Welcome To Struts 2!</h1>
<p><a href="<s:url action='hello'/>">Hello World</a></p>
</body>
</html>
4 新建java包,org.ynu.action 和org.ynu.model。在model包里新建
MessageStore类如下
public class MessageStore {
private String message;
public MessageStore() {
setMessage("Hello Struts User");
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
在action包里新建HelloWorldAction类代码如下
import org.apache.struts.helloworld.model.MessageStore;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorldAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private MessageStore messageStore;
public String execute() throws Exception {
messageStore = new MessageStore() ;
return SUCCESS;
}
public MessageStore getMessageStore() {
return messageStore;
}
public void setMessageStore(MessageStore messageStore) {
this.messageStore = messageStore;
}
}
5 在web更目录下创建一个helloworld.jsp页面代码如下
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Hello World!</title>
</head>
<body>
<h2><s:property value="messageStore.message" /></h2>
</body>
</html>
6 修改struts.xml代码如下,加入action到package节点下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="basicstruts2" extends="struts-default">
<action name="index">
<result>/index.jsp</result>
</action>
<action name="hello" class="org.ynu.HelloWorldAction" method="execute">
<result name="success">/helloworld.jsp</result>
</action>
</package>
</struts>
运行index.jsp然后点击hello链接,如果出现了Hello Struts User,则说明成功了。
代码的运行原理:
1 web.xml中的org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter负责拦截所有的来自客户端浏览器的请求,包括.jsp .action .do等,由 <url-pattern>/*</url-pattern>配置决定的
2 当点击Hello World链接时,struts2框架在struts.xml文件中查找hello这个action对应的类,这里是action包中的HelloWorldAction 类,然后此次请求就交给了这个类来完成,负责完成的方法是execute
3 execute方法创建了一个MessageStore 对象,然后返回一个SUCCESS,框架检查这个action对应映射看如果SUCCESS返回将转发到哪一个jsp页面,这里是helloworld.jsp
4 helloworld页面中的<s:property value="messageStore.message" />表示要调用hello这个action对应的类HelloWorldAction中的getMessageStore 方法,取得messageObject对象,并且该对象调用其中的getMessage 方法取得message。字段的命名方式和存取方式要符合javabean的命名规范
5 呈现结果
分享到:
相关推荐
"Struts2 HelloWorld"是学习Struts2框架的基础教程,通过这个例子,我们可以了解Struts2的基本配置和工作流程。 首先,让我们从项目结构开始。在"struts2_helloWorld"压缩包中,通常会包含以下几个关键文件: 1. *...
在本文中,我们将深入探讨一个基础的Struts2案例——"HelloWorld",这是每个开发者入门新框架时都会接触的经典示例。通过这个案例,我们可以了解Struts2的核心概念和工作原理。 首先,让我们理解一下Struts2框架的...
本教程将详细介绍如何在MyEclipse 6.5.0 GA环境中搭建Struts2.0开发环境并实现一个简单的"HelloWorld"应用。 首先,你需要访问Apache Struts的官方网站(http://struts.apache.org/download.cgi#struts216)下载...
在“struts零配置HelloWorld-Annotation”这个项目中,我们将重点探讨如何利用注解来实现Struts2框架的配置,这对于初学者来说是一个很好的起点。 在传统的Struts2配置中,我们需要在`struts.xml`文件中手动定义每...
在本例中,提供的“Struts2_HelloWorld”压缩包中应该包含了所有必要的库文件,确保项目能够正常运行。 接下来,创建一个简单的Action类。在Struts2中,Action类需要继承自`com.opensymphony.xwork2.ActionSupport`...
本篇学习笔记将引导我们从零开始,通过一个简单的"HelloWorld"项目,了解Struts2的基础知识。 首先,我们需要在本地环境中搭建Struts2的开发环境。这包括安装JDK、配置Java环境变量、下载Apache Struts2的最新版本...
首先,创建一个简单的Struts2 HelloWorld应用需要以下步骤: 1. **环境配置**:确保已经安装了JDK,Apache Maven或Ant,以及一个IDE(如Eclipse或IntelliJ)。还需要在项目中添加Struts2的依赖库,这通常通过Maven...
标签中的"3ds_nandbo"可能是指这个示例是从3DS NANDBO(一个可能的教程或论坛)获取的,而"struts2__helloworld"和"struts2_helloworld"直接指出了这是关于Struts2的Hello World应用。 总的来说,这个压缩包提供了...
1、 URL:http://localhost:8080/struts100515/helloworld 输出Hello World 使用到struts2标签和jstl表达式 2、 URL:http://localhost:8080/struts100515 输入用户名XXX ------> 提交 ,显示 你好 XXX 使用...
这就是一个基于Struts2框架的简单“HelloWorld”应用的实现过程。通过这个实例,开发者可以逐步学习到Struts2的MVC模式、Action配置、业务逻辑处理以及视图展示等核心概念,为后续的复杂Web应用开发打下基础。
总的来说,"基于Struts2的Hello World输出"是一个简单但全面的入门教程,涵盖了Struts2框架的基础概念,包括Action、配置、视图和依赖库的使用。对于初学者来说,这是一个很好的起点,能够帮助他们理解和掌握Struts2...
然后定义了一个名为“helloworld”的Action,其类为cn.struts2.action.HelloWorldAction。当这个Action执行成功(name="success")时,会跳转到/WEB-INF/page/hello.jsp页面。 通过这个简单的示例,我们可以看到...
本教程将深入讲解如何在Ant环境下编写Struts2的Action。 首先,Action是Struts2中的控制器,它接收到用户的请求,执行相应的业务逻辑,并决定如何响应用户。Action类通常需要继承自`...
在这个"Struts2 HelloWorld"程序中,我们将深入理解Struts2的基本结构和配置,以及如何创建第一个简单的应用。 首先,让我们从环境搭建开始。为了运行Struts2的HelloWorld程序,你需要安装Java Development Kit ...
在本教程中,我们将深入探讨如何使用Maven来构建一个基本的Struts2 HelloWorld应用。 首先,我们需要确保已经安装了Java Development Kit (JDK) 和 Maven。JDK是Java编程的基础,而Maven则用于构建和管理项目。在...
这个"struts2的helloworld例子"是为初学者准备的一个基础教程,旨在帮助理解Struts2框架的基本工作原理和配置过程。下面将详细阐述这个例子中的关键知识点。 首先,Struts2框架的核心是Action类,它是处理用户请求...
- **Hello Struts2**:通过创建一个简单的“Hello World”示例,帮助开发者快速上手Struts2的基本配置和运行流程。 - **Action类详解**:Action类是Struts2的核心组件之一,负责处理用户的请求并返回相应的结果。...
在本教程中,我们将深入探讨Struts2的基础知识,通过一个"Struts2-HelloWorld"实例来演示如何在实际项目中应用Struts2。 首先,让我们了解Servlet。Servlet是Java编程语言中用于扩展服务器功能的接口。它处理HTTP...
本教程将带你逐步搭建Struts2的开发环境,为后续的学习和实践打下基础。 首先,我们需要安装以下基础软件: 1. **JDK**:Struts2运行在Java平台上,所以你需要先安装Java Development Kit(JDK)。确保你的系统...