简介
struts2 下载
官网下载地址
最新版是2.5.2,这个版本的一些jar包与旧版本不太一样,不过变化不大。
这里选择完整的包(Full Distribution)下载。
下载解压后的文件结构如下图:
一个简单的例子
- tomcat,我使用的tomcat-8.0.37
- jdk,我使用的是jdk-1.8.101
-
eclipse,我使用的是eclipse neon(4.6.0)保证tomcat能够正常运行。
具体步骤
新建一个Web项目,名称为HelloWorld
把struts2中相关的jar包复制到WEB-INF/lib文件夹下,最基础的需要8个jar包:commons-fileupload-1.3.2.jar、commons-io-2.4.jar、commons-lang3-3.4.jar、freemarker-2.3.23.jar、log4j-api-2.5.jar、ognl-3.1.10.jar、struts2-core-2.5.2.jar、javassist-3.20.0-GA.jar
注意:struts2.5之前的版本有点不同,还需要xwork-core.jar,不需要log4j-api.jar。struts2.5把xwork-core.jar合并到了struts2-core.jar中,但是struts2.5如果没有加入log4j-api.jar,tomcat会启动失败,我也不知道为什么。
在web.xml中配置struts2框架的核心控制器StrutsPrepareAndExexuteFilter 。
在src目录下新建一个业务控制Action类,继承自com.opensymphony.xwork2.ActionSupport,内容如下:
Action需要在Struts2的核心配置文件struts.xml中进行配置。因此需要创建struts.xml文件,该文件位于src目录下:
新建一个result.jsp文件,用来action显示返回的视图
启动tomcat,访问http://localhost:8080/HelloWorld/helloworld.action。如果一切Ok,会出现下面的页面。
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>HelloWorld</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> <!-- 配置核心拦截器 -->
<filter>
<!-- Filter的名字 -->
<filter-name>struts2</filter-name>
<!-- Filter的实现类 struts2.5以前可能有所不同 -->
<filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<!-- 拦截所有的url -->
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd"> <struts>
<package name="default" namespace="/" extends="struts-default">
<!-- name action的名字,访问时使用helloworld.action访问,class:实现类 -->
<action name="helloworld" class="com.xiaohuan.action.HelloWorldAction">
<!-- 结果集,即action中SUCCESS返回的视图 -->
<result>
/result.jsp
</result>
</action> </package>
</struts>
HelloWorldAction.java
package com.xiaohuan.action; import com.opensymphony.xwork2.ActionSupport; public class HelloWorldAction extends ActionSupport{ @Override
public String execute() throws Exception {
System.out.println("正在执行的Action");
//返回逻辑视图SUCCESS
return SUCCESS;
} }
result.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>success</title>
</head>
<body>
<h1>恭喜成功配置好基本的struts2环境</h1>
<h2>Hello World ,This is result.jsp.</h2> </body>
</html>
http://www.vztribe.com/forum.php?mod=viewthread&tid=48&fromuid=1
(出处: VZ部落—化一切为可能)