Struts2配置详解与示例

需积分: 1 0 下载量 61 浏览量 更新于2024-09-16 收藏 5KB TXT 举报
"struts2 配置说明" Struts2是一个流行且强大的Java Web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。这个框架简化了开发过程,提供了一种组织代码和控制应用程序流程的方式。下面将详细解释在给定的配置文件中涉及的关键知识点。 首先,我们来看`struts.xml`文件,它是Struts2的核心配置文件,定义了应用的行为。文件以XML格式编写,遵循特定的DTD(文档类型定义)来确保结构的正确性。 ```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> ``` 这部分声明了XML文档的版本和编码,并引入了Struts2的配置DTD,用于验证配置文件的语法。 在`<struts>`标签内部,我们看到了一个`<action>`元素,这是定义动作(Action)的地方。动作是用户请求和业务逻辑之间的桥梁。 ```xml <action name="test_*" class="net.action.testAction" method="{1}"> <result name="one">/one.jsp</result> <result name="to">/to.jsp</result> <param name="savepath">hello文件路径</param> </action> ``` - `name`属性指定了请求的URL模式,`test_*`表示所有以`test_`开头的请求都会映射到这个动作。 - `class`属性定义了Action类的全限定名,即`net.action.testAction`,这个类将处理用户的请求并执行相应的方法。 - `method`属性通过`{1}`占位符引用了请求路径中的部分,这意味着如果请求是`test_something`,那么`method`会尝试调用`testAction`类的`something`方法。 - `<result>`元素定义了动作执行后的结果页面。`name`属性是结果名称,`/one.jsp`和`/to.jsp`分别对应不同的结果页面。 - `<param>`元素用于传递参数,`name`属性指定参数名,`savepath`在这里表示一个名为“savepath”的参数,其值为“hello文件路径”,这个参数可以在Action类中获取并使用。 接下来是`web.xml`文件,这是所有Java Web应用程序的标准部署描述符。 ```xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> </filter> <!-- 其他配置... --> </web-app> ``` 在`<web-app>`标签内,`<filter>`元素定义了一个名为`struts2`的过滤器,它的作用是在HTTP请求到达Servlet之前进行预处理,并在响应返回给客户端之前进行后处理。`filter-class`指定的是Struts2的核心过滤器类`StrutsPrepareAndExecuteFilter`,它负责初始化Struts2框架并处理请求。 在实际应用中,Struts2的过滤器通常会包含在`<filter-mapping>`元素中,用来定义哪些URL需要通过Struts2过滤器进行处理。不过,这里没有给出`<filter-mapping>`的配置,通常我们会看到如下配置: ```xml <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ``` 这表示所有请求都通过Struts2过滤器进行处理。 总结一下,Struts2配置涉及到的主要知识点包括: 1. `struts.xml`文件:定义了Action和它们的结果页面,以及Action类与请求之间的映射。 2. `web.xml`文件:配置Struts2过滤器,使得框架可以拦截并处理请求。 3. Action类:处理用户请求,执行业务逻辑,并返回结果页面。 4. 结果页面:根据Action执行的结果,向用户展示相应的视图。 5. 参数传递:通过`<param>`元素在配置文件中设置Action类的属性值。 以上就是关于Struts2配置的一些关键点,理解和掌握这些知识将有助于你更有效地开发和维护基于Struts2的Web应用程序。