struts2 基本配置

preview
共54个文件
jsp:12个
jar:11个
class:9个
需积分: 0 0 下载量 124 浏览量 更新于2012-04-10 收藏 3.29MB ZIP 举报
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、模块化和易于管理的Web应用。它的基本配置是理解和使用Struts2的关键步骤,对于初学者来说尤其重要。以下将详细介绍Struts2的基本配置及其相关知识点。 一、Struts2的核心组件 Struts2的核心组件包括Action、Result、Interceptor(拦截器)等。Action是业务逻辑的执行者,Result负责处理Action执行后的结果,而Interceptor则是在Action调用前后进行额外操作的中间层。 二、配置文件 1. `struts.xml`: 这是Struts2的主要配置文件,用于定义Action、Result和Interceptor等。它通常位于项目的`src/main/resources/`目录下,或者在Web应用中放在`WEB-INF/classes`目录下。 三、Action配置 在`struts.xml`中,我们需要为每个Action定义一个配置元素。例如: ```xml <action name="helloWorld" class="com.example.HelloWorldAction"> <result name="success">/HelloWorld.jsp</result> </action> ``` 这里的`name`属性是Action的唯一标识,`class`属性指定Action类的全限定名,`result`元素定义了Action执行成功后的跳转页面。 四、拦截器配置 拦截器可以实现通用功能,如日志、权限检查等。在`struts.xml`中,我们可以使用`interceptors`和`default-interceptor-ref`来配置拦截器链。例如: ```xml <interceptors> <interceptor name="logger" class="com.example.LoggerInterceptor"/> <interceptor-stack name="myStack"> <interceptor-ref name="logger"/> <interceptor-ref name="defaultStack"/> </interceptor-stack> </interceptor-stack> <default-interceptor-ref name="myStack"/> ``` 这里定义了一个名为`logger`的拦截器和一个自定义的拦截器栈`myStack`,并将`myStack`设置为默认拦截器栈。 五、结果类型配置 Struts2支持多种Result类型,如`dispatcher`(默认),`stream`,`redirect`等。在`result`元素中,`type`属性定义了结果类型,`name`属性与Action中的返回值对应。例如: ```xml <result name="input">/input.jsp</result> <result name="error">/error.jsp</result> ``` 六、常量配置 Struts2还允许我们在`struts.xml`中配置全局常量,如: ```xml <constant name="struts.devMode" value="true"/> ``` 这会开启Struts2的开发模式,提供更丰富的错误信息。 七、Action映射与URL Struts2通过Action映射来处理请求,如访问`http://localhost:8080/yourapp/helloWorld`会触发`helloWorld` Action。Action名称与URL的对应关系由`struts.xml`中的Action配置决定。 八、Action的参数传递 Struts2可以通过请求参数或Action的私有属性传递数据。例如,如果Action有一个名为`message`的属性,我们可以在JSP中使用`<s:textfield name="message"/>`,在Action中使用`@Param("message")`注解接收参数。 九、Struts2的生命周期 1. 请求到达:客户端发送HTTP请求。 2. 拦截器链:请求通过拦截器链,每个拦截器依次执行。 3. 执行Action:当拦截器处理完成后,执行Action方法。 4. 处理结果:根据Action返回的结果名,跳转到对应的Result。 5. 渲染视图:Result加载相应的资源(如JSP、Freemarker模板等)并渲染到客户端。 十、总结 理解并正确配置Struts2的基本元素,如Action、Result、Interceptor和常量,是掌握Struts2的关键。同时,了解其生命周期和请求处理流程,有助于更好地设计和调试应用。通过实践Struts2Demo项目,你可以加深对这些概念的理解,并逐步熟练运用到实际开发中。