1 .structs2 開發所需的jar包.
commons-fileupload-1.3.1.jar 上傳文件
struts2-core-2.3.16.3.jar 核心jar包
xwork-core-2.3.16.3.jar xwork
commons-logging-1.1.3.jar log4j日誌輸出
ognl-3.0.6.jar 讀寫對象的屬性
javassist-3.11.0.GA.jar 代碼生成工具包
freemarker-2.3.19.jar 模板
commons-io-2.2.jar apache io
commons-lang3-3.1.jar
2.編寫structs2 配置文件
struct2 默認配置文件爲structs.xml,放在WEB-INF下,直接放src目錄下,配置模板如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!--package 是structs2 管理一組業務相同的action ,主要是供其他包集成
namespace 訪問該包下action的一部分
extends 繼承這個包是引用stucts2的核心功能
-->
<package name="default" namespace="/ok" extends="struts-default">
<!--
name 請求action名
class 請求action類路徑
method 請求action類的具體方法
result 返回結果
-->
<action name="firstAction" class="com.zj.practice.action.FirstAction" method="excute">
<result name="success">/WEB-INF/page/my.jsp</result>
</action>
</package>
</struts>
3.web.xml文件加入structs2框架啓動配置. 當structs2啓動時,就會讀取structs.xml文件完成初始化
<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>
4 .action類
package com.zj.practice.action;
public class FirstAction {
private String message;
public String excute(){
message = "我的第一個action";
return "success";
}
public String getMessage() {
return message;
}
}
5 .jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'my.jsp' starting page</title>
</head>
<body>
${message }
</body>
</html>