一、基本概念与使用
1.Struts 2的起源和背景:
Struts 2以WebWork优秀的设计思想为核心,吸收了Struts 1的部分优点,建立了一个兼容WebWork和Struts 1的MVC框架,Struts 2的目标是希望可以让原来使用Struts 1、WebWork的开发人员,都可以平稳过渡到使用Struts 2框架
2.Struts2是什么:
-
Struts 2 是一个雅致的,可扩展的,用来建立企业级Java Web应用程序的框架。
-
Struts 2 不但注重程序的开发过程,更注重部署和后期维护。
-
Struts 2 来源于WebWork 。
-
Struts 2 融合了Struts 1和 WebWork的社区力量,是这两个社区努力的结果。
-
Struts 2 非常容易使用。
-
Struts 2 最大可能的保留了和Strut 1.x的相似度。
3.基本用法
1)拷贝lib包到项目中
2)配置web.xml文件,配置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>
<url-pattern>/*</url-pattern>
</filter-mapping>
3)编写Struts2.3.1业务逻辑控制器(实现Action接口)
package com.turing.test.hello;
import com.opensymphony.xwork2.Action;
/**
* @desc 实现Action接口
* @author HYZ
* @time 2021年3月2日
*/
public class HelloAction implements Action {
@Override
public String execute() throws Exception {
System.out.println("Hello Strtus2.3.1");
return "query";
}
}
4)配置Struts2.3.1的配置文件struts.xml(放到src下面)
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<include file="struts-default.xml" />
<package name="login" extends="struts-default">
<action name="hello" class="com.turing.test.hello.HelloAction">
<result name="query" type="dispatcher">/list.jsp</result>
</action>
</package>
</struts>
5)在WebContent下直接创建list.jsp,且在上面写上“跳转之后的页面”
6)url请求即是在index.jsp上写上:
<a href="<%=request.getContextPath()%>/hello.action">hello:struts2</a>
执行流程