這里先簡單介紹一下我用的三大框架版本以及下載地址
相關鏈接:eclipse中SSH三大框架環境搭建<二>
eclipse中SSH三大框架環境搭建<三>
struts-2.3.30 下載地址:點擊跳轉到struts下載頁
spring-framework-4.3.1 點擊跳轉到spring下載頁
hibernate-release-5.2.2.點擊跳轉到hibernate下載頁
第1步:把上面的jar包下載完成后,先在eclipse中新建一個web工程,新建工程的同時最好選上創建的同時添加web.xml文件

第2步:找到下載並解壓好的strtus文件中找到apps目錄下的strtus2-blank.war的壓縮包,再找到這個壓縮包中WEB-INF目錄下的lib目錄,
最后將lib中的所有jar包復制到我們新建項目的lib包中

第3步:配置web.xml文件,找到前面lib包所在的同級目錄下的web.xml文件,復制出其配置的過濾器,如下:
注意:由於struts版本不同所以其配置的過濾器寫法上略有差異,我們一般參照官方給的模板
1 <filter> 2 <filter-name>struts2</filter-name> 3 <filter-class> 4 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 5 </filter-class> 6 </filter> 7 8 <filter-mapping> 9 <filter-name>struts2</filter-name> 10 <url-pattern>/*</url-pattern> 11 </filter-mapping>
第4步:我們可以寫我們的action類了,編寫action類我們一般會繼承ActionSupport父類在aciton類中我們可以定義一個返回值為String類型的execute()方法[該方法為默認方法]。這里的action我們可以簡單理解為MVC模式下的控制器
1 import com.opensymphony.xwork2.ActionSupport; 2 3 public class IndexAction extends ActionSupport{ 4 5 @Override 6 public String execute(){ 7 8 System.out.println("該方法為默認方法被struts2自動調用"); 9 10 return "success"; 11 } 12 }
第5步:我們需要配置一個非常重要的struts.xml文件,我們還是找到前面lib包所在同級目錄下的src目錄下的java目錄下的struts.xml文件將xml文件頭信息復制出來,如下:

1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE struts PUBLIC 3 "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" 4 "http://struts.apache.org/dtds/struts-2.3.dtd"> 5 6 <struts> 7 <package name="001pck" extends="struts-default"> 8 9 <action name="Index" class="action.IndexAction" method="execute"> 10 <result name="success">/WEB-INF/jsp/index.jsp</result> 11 </action> 12 </package> 13 14 </struts>
這里package標記中name屬性用作定義一個包名以區分其他人代碼,extends屬性用於繼承一個父包
action標記中的name屬性是用作客戶端訪問時的路徑相當於Servlet's path
action標記中的class屬性則是用作與這個action所對應的aciton類的全路徑
action標記中的method屬性時與action類的方法所對應不寫默認為execute方法
action標記內result中的name屬性為其父標記所對應方法的返回值,不寫默認為success
若返回值與name屬性值匹配則完成result標記內指定的路徑進行跳轉(本例就跳轉到我們事先編寫好的一個index.jsp頁面)
第6步:運行項目

此時我們發現我們的請求已經被struts成功攔截,接下來我們輸入我們正確的訪問路徑也就是我們上一步配置action中name屬性的值

如圖所示頁面已經正常顯示,最后我們看一下后台

小結:struts在本例中主要起一個攔截的作用,防止了客戶端一些不正確的訪問,struts的其他作用與用法我會在后期的博客中發布。
感謝大家瀏覽,如遇到問題歡迎各位及時與我溝通,有何建議,在下不勝感激。
