用OGNL表示式取值棧中的值
首先,簡單介紹一下Struts2標籤
使用Struts2標籤,需要先在頁面中引入Struts2標籤庫:
<%@ taglib prefix="s" uri="/struts-tags" %>
標籤庫的位置在struts2-core-2.3.1.2.jar包中的META-INF/struts-tags.tld
______________________________________________________________________________________________
<s:debug/>標籤是一個超連結,其作用可以顯示出值棧的內容,可用於除錯。
______________________________________________________________________________________________
用OGNL表示式顯示值棧中的資料的時候:
- 如果要訪問物件棧中的值,直接訪問屬性即可。
- 如果要訪問Map棧中的值,需要加#。
ActionContext.getContext().getValueStack().push("aaaaaa");
獲取方式:
<s:property/>
將物件放到棧頂:
<span style="white-space:pre"> </span>Person person = new Person();
person.setName("張三");
person.setAge(1);
ActionContext.getContext().getValueStack().push(person);
獲取方式:
補充:如果在物件棧中出現相同的元素,則會從上往下找,直到找到就停止了。 Map棧: 放到request域中:<s:property value="name"/>
ServletActionContext.getRequest().setAttribute("as_request", "as_request");
獲取方式:
<s:property value="#request.as_request"/>
將物件放到request域中:
<span style="white-space:pre"> </span>Person person = new Person();
person.setName("張三");
person.setAge(23);
ServletActionContext.getRequest().setAttribute("person", person);
獲取方式:
<span style="white-space:pre"> </span><s:property value="#request.person.name"/>
<span style="white-space:pre"> </span><s:property value="#request.person.age"/>
取parameter域中的值:
<s:property value="#parameters.id[0]"/>
查詢各個域中的值:
<s:property value="#attr.a_app"/>
attr會按照request>session>application的順序查詢屬性,直到找到為止。__________________________________________________________________________________________ OGNL表示式: OGNL表示式(Object-Graph Navigation Language)是物件影象化導航語言。 OGNL表示式有一下特點:
- 支援物件方法呼叫:objName.methodName();
- 支援類靜態的方法呼叫和值訪問
@[類全名(包括包路經)]
@[方法名 | 值名]
例如:
@[email protected]('foo%s','bar')
@[email protected]_NAME;
- 支援賦值操作和表示式串聯,例如:
- 訪問OGNL上下文(OGNL context)和ActionContext
- 操作集合物件
相關推薦
用OGNL表示式取值棧中的值
首先,簡單介紹一下Struts2標籤 使用Struts2標籤,需要先在頁面中引入Struts2標籤庫: <%@ taglib prefix="s" uri="/struts-tags" %>標籤庫的位置在struts2-core-2.3.1.2.jar包中的M
ognl表示式取值集合中的陣列迴圈取值和頁面普通取值
普通取值 取第一列的值 list<object[]> <s:property value="#request.list[0]" ></s:property> <s:property value="#request.list[1]" >&
Struts2_day03---OGNL、值棧中存、取資料
一、OGNL(Object-Graph Navigation Language) OGNL是一種功能更加強的表示式語言。 理解:類似於EL表示式。EL應用在jsp中,OGNL多用在struts2中。
EL表示式為什麼可以在值棧中取值
樓主這個問題,為什麼用el取request範圍的東西會同樣取到值棧的內容呢.這個問題就要結合struts2的原始碼來說了,我們知道request在javaee裡面是HttpServletRequest它是一個接口裡面的一切包裝都是通過javax.servlet.http.HttpServletRequestW
jsp用el表示式獲取後臺傳來的值,或者獲取session中的值
<script type="text/javascript"> var usernameC = ${sessionScope.SESSION_USER_PROFILE.accountId}; var caseId = "${caseId}"; var taskId =
struts框架值棧問題七之EL表示式也會獲取到值棧中的資料
7. 問題七:為什麼EL也能訪問值棧中的資料? * StrutsPreparedAndExecuteFilter的doFilter程式碼中 request = prepare.wrapRequest(request); > 對Request物件進行了包裝 ,StrutsR
jsp頁面用el表示式取屬性值的原理${bean.field}
EL表示式獲取物件屬性的原理是這樣的:以表示式${user.name}為例EL表示式會根據name去User類裡尋找這個name的get方法,此時會自動把name首字母大寫並加上get字首,一旦找到與之匹配的方法,El表示式就會認為這就是要訪問的屬性,並返回屬性的值。 所以
在jQUery中向值棧中取值,或向session域中取值
當Action中已經向值棧中設值後,如何在jQuery中拿到值棧中的值? 比如:Action中已經向值棧放了一個數據,為 username=“張三” 那麼,在jQuery中就可以這樣做: var name ='${username}' 這樣,就能拿到“張三”這個值了。 更
bootstrap table使用:前端分頁,獲取值棧中的json值,載入到table中,獲取選中的行資訊
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ include file="/common/taglibs.jsp" %> <!DOCTYPE html> <html
struts框架問題五之向值棧中儲存資料
5. 問題五: 向值棧儲存資料 (主要針對root棧) > valueStack.push(Object obj); * push方法的底層呼叫root物件的push方法(把元素新增到0位置) > valueStack.set(String key, Object
struts框架問題六之從值棧中獲取值
6. 問題六: 在JSP中獲取值棧的資料 * 總結幾個小問題: > 訪問root中資料 不需要# > 訪問context其它物件資料 加 # > 如果向root中存入物件的話,優先使用push方法。 > 如果向
struts框架值棧問題七之EL表達式也會獲取到值棧中的數據
getattr bject style 包裝 red 過濾 t對象 color request對象 7. 問題七:為什麽EL也能訪問值棧中的數據? * StrutsPreparedAndExecuteFilter的doFilter代碼中 request = prep
詳解如何在jsp頁面中獲取值棧中的資料
從值棧中獲取資料 使用struts2的標籤中+ognl表示式獲取值棧資料 使用方式:<s:property value=”ognl表示式” /> (1)獲取字串 ·向值棧放字串 ·在jsp中使用struts2標籤+ognl表示式獲取 顯示: (2)獲取
js中獲取servlet的值在值棧中+OgnlValueStack
利用指令碼獲取傳入值: 在struts2中action傳遞給jsp中的資料是儲存在OgnlValueStack中的,所以在jsp頁面中如果想利用指令碼而不是sturts標籤獲取傳入值的話,儘量
struts2值棧有值,ognl 獲取不到,引數名一樣
public class QuestionAnswer { private Long aNum; private Long bNum;private Long cNum;private Long dNum;public Long getaNum() {return aNu
正則表示式取括號內的值 按第一個空格分割字串
<pre name="code" class="csharp"> Regex reg = new Regex(@"\((.*)\)"); string a = "張三(Zhang san)"; Match m = r
用python爬取知乎中的圖片
首先,我們檢視一下知乎的robots協議。 User-agent: * Disallow: / 知乎是不允許爬取其根目錄的。 但是,我們只是用於實驗,而且訪問頻率和正常訪問差距不大,所以可以爬取。 先明確目的: 對手動輸入的網址進行解析 把爬取到的圖片儲存到指定目
使用S標籤配合OGNL表示式取的session時的一點問題!
最近碰到的一種情況: 需要在頁面獲取session值當作一個JS引數,於是就在JS中寫了這般程式碼 var a = <s:porperty value="#session.xx"/> 然而事實上在頁面上並沒有獲取這個引數,檢查發現是session沒有取得。 並且
Struts2中EL表示式的取值順序及OGNL表示式的取值順序
好記性不如賴筆頭………… 正常EL的查詢域為:page(PageContext)–>request–>session–>application Struts2中EL的查詢域為:pa
【Struts2(三)】OGNL表示式與值棧
1.2 相關知識點 1.2.1 什麼是OGNL OGNL:物件圖導航語言,比EL表示式強大很多倍的語言。 EL:從域物件中獲取資料,從EL的11個物件中獲取。${name}${pageContextPath} &nbs