SSH學習之Struts2的第一個Action

回憶

在上一篇博客SSH學習之Struts2的第一個Action中已經介紹了Struts2的環境搭建。接下來這一篇博客就介紹Struts2的第一個Action測試。

Struts2的第一個Action

           相信如果大家導入了struts.xml之後會發現裏面會有很多標籤,在這裏先不要深究以免糊塗。
        我們將struts標籤下的其他標籤刪除。變成如下所示
	<?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>

	</struts>

第一步:創建一個Java類

Struts2中一個Action就是一個Java類。創建一個Java類TestAction,讓其繼承ActionSupport類,重寫類中的execute方法。
      說明:
       SUCCESS是繼承過來的一個字符串常量,其值就是"success"。
	package action;

	import com.opensymphony.xwork2.ActionSupport;
	public class TestAction extends ActionSupport {

		@Override
		public String execute() throws Exception {
			return SUCCESS;
		}
	}

第二步:在struts.xml配置Action中配置

     <?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 name="default" namespace="/" extends="struts-default">
			<action name="testAction" class="action.TestAction" method="execute">
			<result name="success">/success.jsp</result>
			</action>
    		</package>

	</struts>

說明
  • package:相當於Java項目中的包配置,這是必須的。
    • name:必選。爲包去一個名字,可以自定義。
    • namespace:可選。默認是/。
    • extends:必選。而且現階段必須寫成struts-default。
  • action
    • name:必選。自定義值,值會和namespace的值構成action的訪問路徑。
    • class:必選。Action的全路徑。
    • method:可選。默認值是execute,它是Action中藥訪問的方法名。
  • result:標籤內容是跳轉路徑/success.jsp
    • name:必選。這是action中方法的返回值。

第三步:在web.xml中配置Struts2的過濾器

<?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>SSH_Struts2</display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
   </welcome-file-list>
   <!-- 配置Struts2過濾器 -->
  <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>*.action</url-pattern>
  </filter-mapping>
  
</web-app>

第三步:訪問Action

最後就是發佈項目,啓動Tomcat服務器,通過瀏覽器訪問地址:http://localhost:8080/項目名/testAction.action。發現會跳轉到一個成功頁面(該頁面必須存在),說明測試成功。

結語

這是我學了Struts2之後總結的第一個action現在想一想第一次做Action的時候真的是漏洞百出,很折磨人哭,所以剛開始的時候要有耐心。有錯誤不用怕,我就是喜歡錯誤,然後各種百度總結鄙視,在後期階段應該會總結一下我所遇到的問題。
       這是我的一些理解了,希望見諒奮鬥


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章