struts2標籤 什麼時候用 什麼時候用

2021-09-01 09:38:16 字數 678 閱讀 5841

struts2中有值堆疊和堆疊上下文的概念,你用 可以看出. 

s標籤中用#可以取出堆疊上下文中的存放的物件. 

用%{}可以取出存在值堆疊中的action物件,直接呼叫它的方法.例如你的action如果繼承了actionsupport .那麼在頁面標籤中,用%的方式可以拿出國際化資訊. %, 這是jsp2.1最新規範中的語法,是struts2為其解決相容性問題而寫成%的

在域物件中使用% 

比如% 

將獲得user物件的 username屬性值

%{}強調的是從你設定的root點取

%{}用於計算表示式 

如%結果將輸出30 

如%結果將輸出"ab" 

#通常強調從上下文取 

如#parameters.name[0]等價於request.getparameter("name") 

如#session.name等價於session.getattribute("name") 

如#request.name等價於request.getattribute("name") 

%仍然用於計算表示式,只不過操作元可以是變數 

如先定義乙個變數 

則%將輸出25,也可以省略"#",寫為% 

若將age加10,可這麼寫: 

%,將輸出30.不能省略"#"。也就說變數用於計算時不能省略"#"

什麼時候用exists 什麼時候用in

in not in exists not exists 使用exists,oracle會首先檢查主查詢,然後執行子查詢直到它找到第乙個匹配項,這就節省了時間。oracle在執行in子查詢時,首先執行 子查詢,並將獲得的結果列表存放在乙個加了索引的臨時表中。在執行子查詢之前,系統先將主查詢掛起 待子查...

什麼時候用GET?什麼時候用POST?

get和post兩種方法都是將資料送到伺服器,但你該用哪一種呢?http標準包含這兩種方法是為了達到不同的目的。post用於建立資源,資源的內容會被編入http請示的內容中。例如,處理訂貨表單 在資料庫中加入新資料行等。當請求無 時 如進行搜尋 便可使用get方法 當請求有 時 如新增資料行 則用p...

什麼時候用堆,什麼時候用棧?

參考文章 c 面試題之記憶體分配 一 首先,回顧一下c c 的記憶體分配機制。乙個c c 程式編譯時記憶體分為5大儲存區 堆區 棧區 靜態區 全域性區 文字常量區 儲存字串常量 程式 區 存放二進位制程式 下面主要闡述前面三個。1 靜態儲存區域 靜態儲存區域的 內存在程式編譯時就已經分配好,這塊內存...