2018-05-10 18:51:50
浏览数 (1)
入门操作
- 本人独立博客https://chenjiabing666.github.io
导入jar 包
创建项目
- 在eclipse中创建一个web项目
- 在webContent下WEB-INF/lib下导入需要的jar包即可
配置核心过滤器 StrutsPrepareAndExecuteFilter (web.xml)
- 核心过滤器相当于springmvc中的前端控制器的功能,都是用来分发请求的
- 这里的核心过滤器默认分发的请求是以
.action
结尾的请求,因此我们可以使用这个默认的,但是我们也可以自己配置自己的,下面我配置的是所有的请求都分发 - 在
web.xml
中配置
代码语言:javascript
复制 <!-- 配置struts2的核心过滤器 -->
<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>
<!-- struts2中默认的访问路径是以.action结尾的路径才会分发,
因此我们这里需要设置即使不是.action结尾的也能分发请求给对应的action -->
<url-pattern>/*</url-pattern>
</filter-mapping>
创建action类
- 定义action类有两种方法,一种是实现
Action
接口,一种是继承ActionSupport
,这个在第二章会详细讲解
代码语言:javascript
复制import com.opensymphony.xwork2.Action;
/**
* action类: 这里实现的Action接口
* @author chenjiabing
*/
public class TestAction implements Action {
@Override
public String execute() throws Exception {
System.out.println("cchjemko");
return SUCCESS;
}
}
创建核心配置文件
- 文件名为:
struts.xml
- 存放的路径: 在
src
目录下,或者自己创建的源文件夹的根目录下 - struts.xml 内容
代码语言:javascript
复制<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<!--定义package ,name是这个package的名字,唯一标识
extends: 该属性是一个选择属性,表示继承其他的包,但是我们一般都会继承struts-default
namespace:该属性是一个可选属性,指定该包的命名空间,默认的是“/”,以为一个配置文件中可能有相同名字的action,如果配置不同的namespace,那么就可以配置相同的action的名字,这个和调用执行请求的url息息相关
-->
<package name="test" extends="struts-default" namespace="/">
<!-- 配置测试的action类,其中name是调用的别名,class是Action类的全路径 类名 包名-->
<action name="testaction" class="com.jsnu.struts2.controller.TestAction" >
<!--name是Action类中返回的值,/jsp/success.jsp是对应的跳转视图,这里如果返回success,那么跳转到/jsp/success.jsp这个视图-->
<result name="success">/jsp/success.jsp</result>
</action>
</package>
</struts>
创建视图
- 前面的核心配置文件中定义了跳转的视图为 /jsp/success.jsp
- 在
webContent
下创建一个jsp文件夹,在其中创建一个success.jsp
文件
执行
- 开启tomcat,在浏览器张输入:
http://localhost:8080/Struts2/testaction.action
- 执行成功之后,我们将会看到调用上面的链接,页面就会跳转到success.jsp页面
- 但是我们看到地址依然没有改变,因为struts默认的跳转是以转发的方式,不是重定向,后面我们会讲到怎样设置跳转方式