概述
1.struts2是应用在web层的框架。
*web层其他常见框架:struts1、springmvc、webwork
2.提供:
-Exception处理机制
-result方式的页面导航(通过该标签实现重定向或跳转)
-良好的ajax支持
入门案例
1.创建一个web工程引入jar包
可参考:idea>>Java>>Web Appliaction>>struts 2选择download直接下载
创建项目.png
*直接下载的jar包中可能缺失javassist,缺失则手动导入后右键Lib>>add as library
目录结构
2.编写Action(sayHello)
(1)创建方法sayHi()
(2)设置返回值,示例为success
public class sayHello {
public String sayHi(){
System.out.println("Hi~~~~~~");
return "success";
}
}
3.在struts.xml中配置以上action类
(1)配置一个包声明命名空间(namespace)
(2)配置action指定处理请求的url(name)和对应action类(class)
(3)设置result跳转页面(sayHi.jsp)
<struts>
<package name="hello" namespace="/hello" extends="struts-default">
<action name="sayHi" class="cn.struts.demo.sayHello" method="sayHi">
<result name="success">sayHi.jsp</result>
</action>
</package>
</struts>
4.在web.xml中配置核心过滤器
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*struts2不同版本StrutsPrepareAndExecuteFilter所在位置不同,可以输入类名以idea自动查找补全
5.创建跳转页面sayHi.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
success!
</body>
</html>
*可扫描到的位置受包设定的命名空间限制,该例中应放在web/hello文件夹下
6.配置tomcat,运行项目
7.测试:在浏览器输入http://localhost:8080/Struts2_war_exploded/hello/sayHi
跳转页面显示“success!”
创建成功。