本文用的是Intellij IDEA开发工具,struts2版本是struts-2.3.24,官网最新的是2.5,和2.3有些区别。
官网下载地址:https://struts.apache.org/download.cgi#struts2514.1
打开下载后的压缩包我们可以看到
1.第一步当然是创建工程,导入我们所要用的jar包咯。
但是打开lib目录会发现一大堆的jar包,我们实际所需要的并不用这么多。这时候就可以取apps(案例)目录下去找。
这些war包就是案例。
随便打开一个案例,找到WEB-INF/lib,这里面的jar包就是我们所需要的啦。
好了知道了所需的jar包,我们就可以在创建的web项目里面导入了。在项目中的WEB-INF下创建lib文件夹,并将所需要的jar导入进去。
2.编写一个action类
public class HelloAction { public String hello(){ System.out.println("hello,struts2"); return "success"; } }
3.编写struts.xml配置文件
首先要在项目的src目录下创建struts.xml文件
<!-- package:将action封装起来,文件夹 name:包名,给package起个名,不能重名 namespace:给action的访问路径定一个命名空间 不命名就是"/" --> <package name="hellodemo" namespace="/hello" extends="struts-default"> <!-- name:决定action的访问资源名 class:action类的相对路径 method:决定访问action类中调用的方法,如果不写method就会自动调用execute方法 --> <action name="helloAction" class="a_hellworld.HelloAction" method="hello"> <!-- result:结果处理 name:指定调用哪一个result来处理结果 name的值和action类方法的return值要对应 --> <result name="success">/success.jsp</result> </action> </package>
4.在web目录下创建success.jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
hey yeah yeah yeah~
</body>
</html>
5.在web.xml中配置过滤器
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <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> </web-app>
之前用过2.5版本的,过滤器的包名发生了变化。2.5版本应改为org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
好了,把项目部署到tomcat服务器中,启动后就可以访问啦!
访问地址:
这里要注意要和配置文件相对应才能访问到后台。
这样我们就访问到对应的success.jsp页面啦!