Struts2 Hello World 实例

时间:2017-08-11 16:37

前面我们已经学习了Struts2 的架构,当点击一个超链接或提交一个HTML表单在Struts2 的 Web应用程序,输入所收集被发送到一个Java类称为操作控制器。当动作执行后,结果选择了一个资源来呈现响应。资源通常是一个JSP,但它也可以是一个PDF文件,Excel电子表格,或一个Java applet 窗口。

假设已经建立开发环境。现在让我们继续为第一个 “Hello World” 的 struts2 项目构建。这个项目的目的是建立一个Web应用程序,它收集用户的姓名,并显示“Hello World” 用户名。我们将创建任何Struts2项目的四个组成部分:

SN 组件和说明
1   Action
Create an action class which will contain complete business logic and conrol the interaction between the user, the model, and the view.
 
2   Interceptors
Create interceptors if required, or use existing interceptors. This is part of Controller.
 
3   View
Create a JSPs to interact with the user to take input and to present the final messages.
 
4   Configuration Files
Create configuration files to couple the Action, View and Controllers. These files are struts.xml, web.xml, struts.properties.
 

我打算使用Eclipse IDE,所以所有必需的组件将创建一个动态Web项目下。所以,让我们开始创建动态Web项目。

创建动态Web项目:

启动Eclipse,然后再 File > New > Dynamic Web Project 输入工程名称为 HelloWorldStruts2 并设置屏幕中给出其余的选项:

Hello World Sturts2

选择在接下来的画面中的所有默认选项和最后检查 Generate Web.xml deployment descriptor 选项. 这将创建一个动态Web项目在Eclipse。现在去 Windows > Show View > Project Explorer, 会看到项目窗口的东西如下:

Hello World Sturts2

现在复制下列文件从struts 2 lib 文件夹 C:struts-2.2.3lib 到工程 WEB-INFlib 文件夹,要做到这一点,你可以简单地将以下的所有文件拖放复制到WEB-INF lib文件夹。

commons-fileupload-x.y.z.jar

commons-io-x.y.z.jar

commons-lang-x.y.jar

commons-logging-x.y.z.jar

commons-logging-api-x.y.jar

freemarker-x.y.z.jar

javassist-.xy.z.GA

ognl-x.y.z.jar

struts2-core-x.y.z.jar

xwork-core.x.y.z.jar

创建动作类:

Action类是 Struts2 应用程序的关键,我们实现的大部分动作类中的业务逻辑。因此,让我们创建一个Java文件HelloWorldAction.java Java Resources > src 在下面给出的内容包名 com.yiibai.struts2 。

Action类响应用户操作,当用户点击一个URL。 Action类中的方法中的一个或多个被执行并返回一个字符串结果。基于结果的值,一个特定的JSP页面的呈现方式。

package com.yiibai.struts2;publicclassHelloWorldAction{privateString name;publicString execute()throwsException{return"success";}publicString getName(){return name;}publicvoid setName(String name){this.name = name;}}

这是一个非常简单的类,一个名为“name”属性。我们有标准的“name”属性的getter和setter方法​​,并返回字符串“success”的执行方法。 

Struts2框架将创建一个对象HelloWorldAction类并调用执行方法在响应用户的动作。把业务逻辑里面的execute方法,最后返回的字符串常量。简单地说为每个网址,必须执行一个动作类,要么就可以直接使用这个类的名称作为操作名,也可以使用struts.xml文件如下所示映射到一些其他的名字。

创建视图

我们需要一个JSP提交最后的消息,这个页面会被称为Struts2框架一个预定义的动作时,会发生这种映射将被定义在struts.xml文件。因此,让我们一起创造在Eclipse项目在WebContent文件夹下面的jsp文件helloWorld.jsp。要做到这一点,右键单击WebContent文件夹在项目资源管理器,选择New >JSP File。 .

<%@ page contentType="text/html; charset=UTF-8" %> <%@ taglib prefix="s" uri="/struts-tags" %> <html><head><title>Hello World</title></head><body> Hello World, <s:propertyvalue="name"/></body></html>