Struts入門

分層思想:

HelloWorldActio:

package cn.itcast.action;
import com.opensymphony.xwork2.Action;

public class HelloWorldAction implements Action {

    public String execute() throws Exception {
        System.out.println("HelloWorldAction ************* execute()");
        return "success";
    }
}


Struts.xml

<?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>
    <!-- /primer/helloWorldAction.action
        package:包
            * name:包名,唯一的,必選項
            * namespace:命名空間,唯一的,相當於房間號。可選項,省略情況下是"/"。頁面中請求連接的前半部分
            * extends:繼承
                * extends="struts-default":struts2框架底層提供的核心包struts2-core-2.3.3.jar下的struts-default.xml文件
                * 爲什麼要繼承這個struts-default.xml文件?
     -->
    <package name="primer" namespace="/primer" extends="struts-default">
        <!--
            action:
                * name:對應頁面中請求連接的後面半部分
                * class:對應要執行的類的完整路徑
         -->
        <action name="helloWorldAction" class="cn.itcast.action.HelloWorldAction">
            <!--
                result:結果類型
                    * name:對應的是執行的類的方法的返回值
                        public String execute() throws Exception {
                            System.out.println("HelloWorldAction ************* execute()");
                            return "success";
                        }
                    * 後半部分的文本內容:要轉向到的頁面
             -->
            <result name="success">/primer/success.jsp</result>
        </action>
        
    </package>
</struts>


web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name></display-name>    
  <!-- struts2核心,struts2從這裏開始 -->
  <filter>
      <filter-name>StrutsPrepareAndExecuteFilter</filter-name>
      <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
      <filter-name>StrutsPrepareAndExecuteFilter</filter-name>
      <url-pattern>/*</url-pattern>
  </filter-mapping>
<welcome-file-list>
    <welcome-file>primer/test.jsp</welcome-file>
</welcome-file-list>
</web-app>


primer目錄下test.jsp
<%@ page language="java" pageEncoding="utf-8" contentType="text/html; charset=utf-8"%>
<%@ taglib uri="/struts-tags"   prefix="s"%>
<html>
  <head>
    <title>My JSP 'index.jsp' starting page</title>
    </head>
  <body>
  <!-- 獲取絕對路徑 -->
   絕對路徑:${pageContext.request.contextPath}
       入門的路徑:<br>
    <!-- action路徑:絕對路徑/命名空間/action名.action -->
  入門的路徑:<br>  
            
      <br>
      <a href="${pageContext.request.contextPath}/primer/helloWorldAction.action">helloWorld</a><br>
      
  </body>
</html>


primer目錄下success.jsp

<%@ page language="java" pageEncoding="utf-8" contentType="text/html; charset=utf-8"%>
<%@ taglib uri="/struts-tags"   prefix="s"%>
<html>
  <head>
    <title>My JSP 'index.jsp' starting page</title>
    </head>
  <body>
        primer文件夾下  helloworld成功!!!!<br>
  </body>
</html>



發佈了41 篇原創文章 · 獲贊 5 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章