在JSP頁面中訪問action類中數據

1.s:action標籤概述 
  s:action標籤功能爲:在JSP頁面中訪問action類中的數據,執行某些操作,並返回相應數據;其屬性及意義如下: 
屬性名 是否必需 默認值 類型 說明
executeResult False False Boolean 是否將action返回的結果視圖顯示在當前頁面中
flush False True Boolean 是否進行刷新
ignoreContextParams False False Boolean 是否忽略URL參數
name True String 指定調用哪個action
namespace False String 指定調用哪個action的命名空間
var False String 將調用的action的名稱放到值棧中

2.新建Acton實例類 
Java代碼  收藏代碼
  1. package com.wl.control.tagsAction;  
  2.   
  3. import com.opensymphony.xwork2.ActionSupport;  
  4.   
  5. public class RunAction extends ActionSupport {  
  6.   
  7.     private String name;  
  8.       
  9.     public String getName() {  
  10.         return name;  
  11.     }  
  12.   
  13.     public void setName(String name) {  
  14.         this.name = name;  
  15.     }  
  16.   
  17.     @Override  
  18.     public String execute() throws Exception {  
  19.   
  20.         return "runaction";  
  21.     }  
  22.   
  23. }  

3.新建JSP頁面 
Java代碼  收藏代碼
  1. <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>  
  2. <%@ taglib uri="/struts-tags" prefix="s" %>  
  3.   
  4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  5. <html>  
  6.     
  7.   <body>  
  8.      name的值是:  
  9.      <s:property value="#parameters.name"/>  
  10.   </body>  
  11. </html>  

4.修改struts.xml文件 
Java代碼  收藏代碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE struts PUBLIC   
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
  5. <struts>  
  6.    <package name="Struts2.1" extends="struts-default">  
  7.        <action name="runaction" class="com.wl.control.tagsAction.RunAction">  
  8.            <result name="runaction">/controlTags/runaction.jsp</result>  
  9.        </action>  
  10.    </package>  
  11. </struts>  

5.創建使用Action標籤的JSP頁面 
Java代碼  收藏代碼
  1. <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>  
  2. <%@ taglib uri="/struts-tags" prefix="s" %>  
  3.   
  4. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  5. <html>  
  6.     
  7.   <body>  
  8.      顯示runaction.jsp中的內容並且輸出name參數的值:  
  9.      <br/>  
  10.      <s:action name="runaction" executeResult="true"></s:action>  
  11.      <br/>  
  12.      顯示runaction.jsp中的內容並且不輸出name參數的值:  
  13.      <br/>  
  14.      <s:action name="runaction" executeResult="true" ignoreContextParams="true"></s:action>  
  15.      <br/>  
  16.      僅僅調用runaction,不顯示結果:  
  17.      <br/>  
  18.      <s:action name="runaction"></s:action>  
  19.      <br/>  
  20.        
  21.   </body>  
  22. </html>  

註釋:s:action標籤的屬性executeResult值爲True時,代表返回一個結果頁面在JSP頁面中顯示;s:action標籤屬性ignoreContextParams值爲True時,代表忽略URL中的參數。 


特別注意了,這樣容易造成死循環,可以新建一個JSP頁面,加上  <s:action name="runaction" executeResult="true"></s:action>,然後在struts.xml中跳轉到內容頁面  

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