第一步:搭环境
首先导入 Struts2 必要的 jar 包,共计13个。
第二步,在web.xml中配置过滤器,千万别忘!
<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>
- 第三步:在 src 目录下新建并编写 struts.xml 文件(注意:文件名必须为这个,因为这是 Struts2 默认加载的)。
1. 导入约束并创建编写<struts>
标签,在<struts>
标签下添加<package>
标签,<package>
标签中要有name(随便起个名字)、namespace(名称空间)、extends(默认继承struts-default)属性。如下:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
</package>
</struts>
2. 在 src 目录下新建一个包,包下编写一个 HelloAction 的类,随后继承 ActionSupport 。这个类下面的方法编写有两点要求:
· 必须用 public 修饰!
· 返回值必须为 String 类型!
举例:
package com.xianshun.action;
import com.opensymphony.xwork2.ActionSupport;
public class HelloAction extends ActionSupport {
//新建类后在第5行按 Ctrl+1,Add Default serial version ID
private static final long serialVersionUID = 1L;
/**
* 测试Struts2环境
* @return
*/
public String sayHello(){
System.out.println("hello~");
return null;
}
}
3. 配置 struts.xml 。如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
<!--
name:与上面的名称空间共同构成Action的访问路径
class:Action类的全路径
method:想要执行Action类中的哪个方法
-->
<action name="hello" class="com.xianshun.action.HelloAction" method="sayHello"></action>
</package>
</struts>
- 测试访问
将项目添加到服务器,打开浏览器输入 http://localhost:8080/项目名/hello.action 。如果控制台打印了 sayHello 中的打印方法,则说明环境已经搭好了。