環境: window 10 ,JDK 1.8 ,Tomcat 7 ,MyEclipse 2014 prohtml
建立 JavaWeb 項目java
導入 structs2 的jar包,只需導入13個基礎 jar 包便可,後續 jar 包根據須要導入。web
asm-3.3.jar
asm-commons-3.3.jar
asm-tree-3.3.jar
commons-fileupload-1.3.1.jar
commons-io-2.2.jar
commons-lang3-3.2.jar
freemarker-2.3.22.jar
javassist-3.11.0.GA.jar
log4j-api-2.2.jar
log4j-core-2.2.jar
ognl-3.0.6.jar
struts2-core-2.3.24.jar
xwork-core-2.3.24.jarapache
web.xml 配置 structs2 核心過濾器(很重要)。api
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <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> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
定義處理用戶請求的 Action 類app
package cn.itcast.action; import com.opensymphony.xwork2.ActionSupport; public class HelloWorldAction extends ActionSupport{ public String execute() throws Exception { return SUCCESS; } }
在項目目錄 src 下,新建一個 structs.xml,書寫下面的代碼。ssh
<?xml version="1.0" encoding="UTF-8"?> <!-- 指定Struts2配置文件的DTD信息 --> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <!-- Struts2配置文件的根元素 --> <struts> <!-- Struts2的Action必須放在指定的包空間下定義 --> <package name="hello" extends="struts-default" namespace="/*"> <!-- 定義 action,該action對應的類爲cn.itcast.action.HelloWorldAction類 --> <action name="helloWorld" class="cn.itcast.action.HelloWorldAction"> <!-- 定義處理結果和視圖資源之間的映射關係 --> <result name="success">/success.jsp</result> </action> </package> </struts>
建立訪問視圖jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <title>首頁</title> </head> <body> <h1>Welcome To Struts 2!</h1> <a href="${pageContext.request.contextPath }/helloWorld.action"> Hello World </a> </body> </html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>成功頁面</title> </head> <body> 歡迎學習第一個Struts2程序! </body> </html>
效果圖學習
注意別忘記在 web.xml 裏配置 structs2 核心過濾器。url
HelloAction 類繼承 ActionSupport 要覆寫父類的 execute 方法。
execute 方法中返回值
SUCCESS
是常量。