您的位置:首页 > 编程语言 > Java开发

SSH(Spring+Struts+Hibernate)学习笔记(三)Struts 2 Hello World

2012-08-09 16:18 483 查看
本文以Hello World为例介绍Struts 2的简单应用

开发工具:Eclipse EE Juno 4.2

运行环境:Java 1.7+Tomcat 7+Struts 2.3.4

1. 下载Struts 2

Struts 2完整版下载地址:http://labs.mop.com/apache-mirror//struts/binaries/struts-2.3.4-all.zip. 完整版包括示例,库文件,文档和源码,方便学习。下载后解压到任意位置。

PS:struts-2.3.4-all.zip的文档不包括api等,因此最好下载单独的文档,下载地址:http://labs.mop.com/apache-mirror//struts/documentation/struts-2.3.4-docs.zip

2. 创建Dynamic Web Project

在Eclipse中创建Dynamic Web Project,如StrutsHelloWorld,Target runtime选择Tomcat 7.0(或在新建项目完成后设置),剩下步骤采用默认设置。

PS:如果创建项目时找不到Dynamic Web Project,可能是由于未使用Eclipse EE版,可以下载Eclipse EE或者在EclipseSE中增加Web开发工具包;如果Targetruntime中没有Tomcat,请参照Eclipse中Tomcat的配置

3. 添加配置文件

在简单的Hello World中,需要添加两个与Struts相关的配置文件,web.xml和struts.xml。可以从Struts的示例程序中复制到HelloWorld项目中。找到下载的struts中的apps文件夹下的struts2-blank.war文件,使用解压缩软件解压,web.xml文件位于WEB-INF中,复制到HelloWorld项目WebContent的WEB-INF目录下,struts.xml文件在WEB-INF\src\java中,复制到HelloWorld项目src目录下

PS:struts.xml文件可以放在任意Deploy path为WEB-INF/classes的根目录中,如src。具体可以通过项目属性中的Deployment Assembly查看路径为WEB-INF/classes的目录有哪些。

4. 添加相关库文件

将struts2-blank下WEB-INF\lib中文件全部复制到HelloWorld项目中相同目录下,HelloWorld中需要使用的Struts相关库文件添加完成。

5. 编写HelloWorld

添加hello.html页面,在body中添加如下代码:
<h1>Hello world!</h1>
<p>This is my first struts2 web app!</p>

添加index.html页面,在body中添加以下代码:
<form action="helloworld">
<input type="submit" value="welcome" />
</form>

在struts.xml文件的package节点中增加如下内容:
<action name="helloworld">
<result>hello.html</result>
</action>

运行HelloWorld项目,点击页面中的按钮后,浏览器显示hello.html中的内容

6. 原理解释

点击welcome按钮,表单提交请求给服务器,服务器调用名为helloworld的action,同时根据web.xml过滤器的设置,调用Struts 2过滤器,Struts 2再根据struts.xml的配置,找到action helloworld对应的处理,根据调用的返回结果,将result中的内容返回给浏览器

7. Struts相关技巧

更改struts配置免重启服务器。添加或修改devMode的值如下所示:

<constant name="struts.devMode" value="true"/>


Eclipse中跟踪显示Struts源代码和帮助文档。
在Web App Libraries下找到需要显示源码的jar右键选择属性->JavaSource Attachment,选择External location,再选择struts 源代码路径(src)即可跟踪显示源代码,在属性中选择JavaDoc Location,将Javadoc location path设置为struts帮助文档所在路径(docs/struts2-core/apidocs)即可在Eclipse中显示帮助文档。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息