Struts2.0入门指南:搭建开发环境与基本配置

需积分: 0 4 下载量 129 浏览量 更新于2024-11-03 收藏 2.67MB DOC 举报
"struts2基本配置使用手册.doc" Struts2是Apache软件基金会的一个开源项目,作为MVC(Model-View-Controller)架构的实现,它极大地简化了Java Web应用程序的开发。Struts2.0的出现是为了解决Struts1.x版本中的一些不足,比如过多的手动编码导致的"类爆炸"问题以及单元测试的困难。通过引入更灵活的配置和强大的插件系统,Struts2.0成功地提升了开发效率和可维护性。 搭建Struts2.0的开发环境通常包括以下几个步骤: 1. 首先,你需要从Apache官网下载Struts2.0的发行包。这个包包含了所有必要的库文件和文档,是开始使用Struts2的基础。 2. 在集成开发环境(例如Eclipse)中创建一个新的Dynamic Web Project。在创建新项目的过程中,你需要指定项目名称,并选择对应的服务器运行时环境,如Apache Tomcat v5.5。 3. 将Struts2的库文件(jar包)添加到项目的构建路径中。这一步至关重要,因为这些库文件包含了Struts2框架运行所需的所有依赖。你可以将Struts2.0 lib目录下的所有jar文件复制到Web工程的WEB-INF/lib目录下,Eclipse会自动更新项目的类路径。 4. 修改项目的web.xml文件,这是Web应用的部署描述符。你需要按照Struts2的配置要求,将相关配置元素添加到web.xml中,包括Struts的过滤器配置、初始化参数等,以确保Struts2能够正确拦截和处理HTTP请求。 例如,web.xml文件的配置可能如下: ```xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <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> </web-app> ``` 完成以上步骤后,你就可以开始编写第一个Struts2应用了。一个简单的HelloWorld示例通常会包括一个Action类、一个结果页面(JSP或Freemarker模板)以及相应的Struts配置。 Action类通常是Java类,它实现了Struts2中的一个接口(如com.opensymphony.xwork2.ActionSupport),并定义了处理用户请求的方法。例如: ```java public class HelloWorldAction extends ActionSupport { public String execute() { return SUCCESS; } } ``` 在Struts2的配置文件struts.xml中,你需要为这个Action定义一个配置项,指定其对应的URL模式和结果页面: ```xml <struts> <package name="default" namespace="/" extends="struts-default"> <action name="hello" class="com.example.HelloWorldAction"> <result name="success">/hello.jsp</result> </action> </package> </struts> ``` 最后,创建一个简单的JSP页面(hello.jsp)来显示结果: ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8"%> <html> <head> <title>Hello World!</title> </head> <body> <h1>Hello, World!</h1> </body> </html> ``` 通过这种方式,当你访问应用的"/hello" URL时,Struts2会调用HelloWorldAction的execute方法,并根据返回的"success"结果跳转到hello.jsp页面。 Struts2还提供了丰富的标签库(Tag Library),如s:form、s:textfield等,使得在JSP页面中与Action进行交互变得更加简单。此外,Struts2支持多种结果类型,如JSP、FreeMarker、 Velocity等,以及AOP(面向切面编程)和拦截器,提供了高度可扩展性和灵活性。 Struts2的配置涉及多个层面,包括web.xml、struts.xml以及Action类和视图的设置。通过深入理解和实践,开发者可以充分利用Struts2的优势,构建出高效、可维护的Web应用。