1、 創建web項目並導入struts2相關jar
struts2開發的基本包:
commons-fileupload-1.2.2.jar 文件上傳下載相關支持包
commons-io-2.0.1.jar io流相關支持包
commons-lang3-3.1.jar 對java.lang包的擴展
freemarker-2.3.19.jar 標簽支持包
javassist-3.11.0.GA.jar 字節碼處理的支持包
ognl-3.0.5.jar 類似El功能,用來取值的相關支持包。
struts2-core-2.3.4.1.jar struts2的核心包
xwork-core-2.3.4.1.jar xwork的核心包
2、 web.xml中配置struts2的核心過濾器
作用:在項目中引入struts2的核心功能,方便將請求交給struts2處理。
struts2.0.0-struts2.1.2兩個版本之間所有版本的核心過濾器均為:
DispatcherFilter
struts2.1.3之后所有版本的核心過濾器均為:
StrutsPrepareAndExecuteFilter
使用:
struts2.3.4.1,核心過濾器:StrutsPrepareAndExecuteFilter
配置核心過濾器:
1 <filter> 2 3 <filter-name> struts2</filter-name> 4 5 <!-- struts2核心過濾器的處理類配置 --> 6 7 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 8 9 </filter> 10 11 <filter-mapping> 12 13 <filter-name>struts2</filter-name> 14 15 <url-pattern>/*</url-pattern> 16 17 </filter-mapping>
3、 創建Action
作用:
處理客戶端的請求,類似servlet的作用,取代servlet。
創建Action的方式:
1. 創建Action類,繼承ActionSupport類
2. 重寫業務方法 execute.
4、配置Action
作用:讓struts2核心過濾器找到對應的Action,讓Action處理客戶端的請求。
配置方式:
創建src/struts.xml
拷貝源碼包下的struts.xml文件。
配置文件內容需刪除、修改,最終內容為:
<?xml version="1.0" encoding="UTF-8"?> <!-- struts2的約束文件,規定xml文檔標簽如何使用 --> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <!-- struts配置文件的根標簽 --> <struts> <package name="##" extends="struts-default"> <!-- Action: 維護了請求路徑與處理請求的Action類及業務方法的映射關系。 --> <action name="hello" class="cn.bing.action.HelloAction" method="execute"> <!-- result:配置了跳轉的方式。 name:業務方法的返回值。 標簽體:跳轉的目標路勁。 --> <result name="success">/index.jsp</result> </action> </package>
5、 在struts.xml中配置Action的跳轉路徑,並編寫jsp頁面
<result name="success">/index.jsp</result>
6、 訪問路徑
http://localhost:8080/項目名/命名空間名/請求資源名稱
如果沒有配置命名空間名:命名空間名默認為/
