综合比较了java的一些MVC开源框架,觉得目前为止,struts2是一个很不错的框架!学习一门新的技术从helloworld开始。这个也不例外。
一:首先新建一个web工程,将struts2需要的jar包拷贝到WEB-INF\lib中,jar包列表如下:
commons-fileupload-X.X.X.jar commons-io-X.X.X.jar commons-logging-X.X.X.jar commons-logging-api.X.X.jar commons-lang3-3.1.jar freemarker-X.X.X.jar ognl-X.X.X.jar struts2-core-X.X.X.X.jar xwork-core-X.X.X.jar javassist-3.7.ga.jar (new for Struts versions 2.2.1 and higher) log4j-1.2.14.jar
二:在web.xml加入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>
三:创建struts.xml
struts2可以通过xml文件或者标注的方式来指定url,java对象和页面直接的关系。struts.xml放在src文件夹下面。下面是一个简单的配置:
<?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> </package> </struts>
四:开始helloworld
1)新建模型类:
package com.cmj.struts2.helloworld.model; 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; } }
2)新建action类
package com.cmj.struts2.helloworld.action; import com.cmj.struts2.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; } }
3)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> <constant name="struts.devMode" value="true" /> <package name="basicstruts2" extends="struts-default"> <action name="index"> <result>/index.jsp</result> </action> <action name="hello" class="com.cmj.struts2.helloworld.action.HelloWorldAction" method="execute"> <result name="success">/HelloWorld.jsp</result> </action> </package> </struts>
4)页面取值
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ 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=UTF-8"> <title>Hello World!</title> </head> <body> <h2><s:property value="messageStore.message" /></h2> </body> </html>
好了,在页面上http://127.0.0.1:8080/struts223/hello.action就可以看到结果了。struts2的helloworld结束了,简单吧。
总结:
下面说说整个的一个流程:
struts2调用流程
A:在浏览器上输入url后,会通过web.xml中配置的过滤器org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。
B:struts2会根据hello.action来寻找对应的HelloWorldAction类,然后框架实例化并调用HelloWorldAction的excute方法。
C:excute方法创建MessageStore 对象,并返回SUCCESS,根据整个SUCCESS来寻找对应的页面资源HelloWorld.jsp。
D:在HelloWorld.jsp中<s:property value="messageStore.message" />表示调用HelloWorldAction的getMessageStore 方法,然后调用
MessageStore 的 getMessage 方法。
相关推荐
通过这个简单的"HelloWorld"例子,我们了解了Struts2开发环境的搭建过程,包括创建项目、导入库、配置`web.xml`、编写Action和结果页面等基本步骤。这只是一个起点,Struts2提供了许多高级特性,如拦截器、结果类型...
在本教程中,我们将详细介绍如何搭建Struts2开发环境。 首先,确保你已经安装了以下基础软件: 1. Java Development Kit (JDK):Struts2运行在Java平台上,所以你需要先安装JDK并配置好`JAVA_HOME`环境变量。 2. ...
在这个"Struts2 HelloWorld"程序中,我们将深入理解Struts2的基本结构和配置,以及如何创建第一个简单的应用。 首先,让我们从环境搭建开始。为了运行Struts2的HelloWorld程序,你需要安装Java Development Kit ...
### Struts2工程环境搭建详解 #### 一、引言 Struts2是基于MVC设计模式的Web应用框架,自其前身Struts1以来,持续优化并解决了原框架中存在的诸多问题,如代码冗余、单元测试难度大等。Struts2通过引入更简洁的...
- **开发环境**:Struts2的开发环境已经在第3章中搭建完毕。 - **应用服务器**:选择了glassfish2作为开发的应用服务器,因为它提供了全面的Java EE支持,同时又是免费且开源的。 #### 三、HelloWorld实例介绍 本章...
本教程将详细介绍如何搭建一个基础的Struts2开发环境,这对于初学者来说是非常重要的第一步。 首先,我们需要准备必要的jar文件。在Java web开发中,jar文件是包含类库和资源的归档文件,它们提供了运行应用程序所...
首先,要开始学习Struts2,你需要确保你的开发环境中已经安装了以下基本组件: 1. **Java Development Kit (JDK)**:Struts2依赖于Java平台,所以你需要先安装JDK,并确保`JAVA_HOME`环境变量已经设置正确。 2. **...
首先,我们需要在MyEclipse这样的集成开发环境中搭建Struts2项目环境。这通常包括以下几个步骤: 1. **创建新项目**:在MyEclipse中新建一个Dynamic Web Project,设置好项目名称和位置。 2. **添加Struts2库**:...
在开始搭建Struts2开发环境之前,我们需要了解其基本概念和依赖的技术。 首先,Struts2是基于Model-View-Controller(MVC)设计模式的,它允许开发者将业务逻辑、数据模型和用户界面分离,提高代码的可读性和可维护...
【JavaWeb_SSH框架入门,IntelliJ IDEA搭建Struts2的HelloWorld】是一个适合初学者的教程,主要讲解如何在IntelliJ IDEA这个强大的Java集成开发环境中搭建一个基于Struts2框架的简单Web应用。SSH框架是Struts2、...
在这个环境搭建的过程中,我们主要关注如何配置和准备必要的库文件,以便运行一个基本的Struts2应用程序。 首先,我们需要理解Struts2的核心组件和工作原理。Struts2框架通过拦截器(Interceptor)机制处理HTTP请求...
接下来,集成开发环境的选择。虽然可以使用任何文本编辑器,但为了提高效率,建议使用如Eclipse、IntelliJ IDEA等IDE。它们提供了强大的代码提示和调试功能,使得开发过程更加便捷。 在IDE中,创建一个新的Java Web...
至此,你就成功地搭建了Struts2.1的开发环境,并创建了一个简单的"Hello, World!"应用。启动服务器,访问`http://localhost:8080/your-app-name/hello`,你应该能看到预期的结果。 请注意,Struts2.1版本相对较旧,...
搭建Struts2环境的第一步是添加必要的库到项目中。这通常涉及在项目的`pom.xml`文件中添加Struts2的相关依赖,如`struts2-core`、`struts2-convention-plugin`等。如果你使用的是Eclipse或IntelliJ IDEA等IDE,可以...
首先,我们需要在本地环境中搭建Struts2的开发环境。这包括安装JDK、配置Java环境变量、下载Apache Struts2的最新版本,并将其添加到项目的类路径中。此外,我们还需要一个Web服务器,如Tomcat,用于运行我们的Web...
2. **Eclipse Neon (4.6)**:这是一款流行的Java集成开发环境,用于编写、调试和部署Java应用程序。你可以通过它来创建和管理Struts2项目。 3. **Tomcat8.5**:这是一个开源的Servlet容器,它实现了Java Servlet和...
Struts2+Spring+MyBatis环境搭建 Struts2、Spring 和 MyBatis 是 Java Web 开发中三个非常重要的框架,分别负责 MVC 模式的Presentation层、Business层和Persistence层。Struts2 负责处理用户的请求和响应,Spring ...
本文将详细介绍如何搭建一个基础的Struts2开发环境。 首先,我们需要了解Struts2的核心组件和工作原理。Struts2框架通过拦截器(Interceptor)机制来处理HTTP请求,它将请求分发到相应的Action,Action执行业务逻辑...
本教程将详细介绍如何搭建一个基本的Struts2开发环境,这对于初学者或寻找特定JAR包的开发者来说非常实用。 首先,我们需要准备以下组件: 1. **JDK**:Java Development Kit,这是编写Java程序的基础,确保你的...
本教程将带你逐步搭建Struts2的开发环境,为后续的学习和实践打下基础。 首先,我们需要安装以下基础软件: 1. **JDK**:Struts2运行在Java平台上,所以你需要先安装Java Development Kit(JDK)。确保你的系统...