JSP EL表達式使用

為什么80%的碼農都做不了架構師?>>> hot3.png

##1.EL全名為Expression Language

out.print(str)	<%=str%>	${str}

例子: Hi! <%=username%> 和 Hi! ${username}是一樣的

只要是支持servlet2.4/jsp2.0的Container就都可以在jsp網頁中直接使用el

EL如今已經是一項成熟,標準的技術

##2.EL語法:

${sessionScope.user.sex}

意思:從session的范圍中,取得用戶的性別

所有EL都是以${為起始、以}為結尾的。

##3.EL提供.和[]兩種運算符來存取數據。

${sessionScope.user.sex} = ${sessionScope.user["sex"]}

.和[]可以同時使用:%{sessionScope.shoppingCart[0].price}

##4.EL隱含對象

jsp中有9個隱含對象,EL有11個隱含對象

常用的El隱含對象:

  • pageScope 取得Page范圍的屬性名稱所對應的值

  • requestScope 取得request范圍的屬性名稱所對應的值

  • sessionScope 取得session范圍的屬性名稱所對應的值

  • applicationScope 取得application范圍的屬性名稱所對應的值

  • param 如同ServletRequest.getParameter(String name)、回傳String類型的值

  • cookie 如同HttpServletRequest.getCookies()

  • initParam 如同ServletContext.getInitParameter(String name)

不常用的EL對象:

  • pageContext 表示此jsp的PageContext
  • paramValue 如同ServletRequest.getParameterValues(String name),回傳String[]類型的值

##算術運算符

  • + 加 ${ 17 + 5 } 22
  • - 減 ${ 17 - 5 } 12
  • * 乘 ${ 17 * 5 } 85
  • /或div 除 ${ 17 / 5 } 3
  • %或mod 余數 ${ 17 % 5 } 2

##關系運算符

  • ==或eq 等于 ${ 5 == 5 } true
  • !=或ne 不等于 ${ 5 != 5 } false
  • <或lt 小于 ${ 3 < 5 } true
  • &gh;或gt 大于 ${ 3 > 5 } false
  • <=或le 小于等于 ${ 3 <= 5 } true
  • >=或ge 大于等于 ${ 3 >= 5 } false

###注意:

在使用EL關系運算符時,不能寫成: ${param.p1} == ${param.p2} 或者${%{param.p1} == ${param.p2} } 而應寫成: ${param.p1 == param.p2}

##邏輯運算符

&&或and 交集 ${ A && B} true/false ||或or 并集 ${ A || B} true/false !或not 非 ${ !A } true/false

##注意:EL可以和常量混用,但是要注意表達式是不行的

轉載于:https://my.oschina.net/csmw00/blog/675092

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458538.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458538.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458538.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

eclipse 中 Android sdk 無法更新的問題

誒&#xff0c;真是麻煩&#xff0c;想下個東西都下不了。我也好久沒折騰過這個了&#xff0c;在家的電腦是早就下載好了的&#xff0c;然后如今又須要下載一份。下不到。網上搜到了資料&#xff0c;記錄下來&#xff1a; 第一種方法:sdk manager - tools - option 選擇強制 xx…

iOS10 xcode8 分頁請求MJRefresh崩潰問題

MJRefresh出現崩潰現象 解決辦法&#xff1a;類庫增加判斷 if (range.location ! NSNotFound) { language [language substringToIndex:range.location]; }

網絡編程學習筆記一:Socket編程

from: http://blog.csdn.net/gneveek/article/details/8699198 “一切皆Socket&#xff01;” 話雖些許夸張&#xff0c;但是事實也是&#xff0c;現在的網絡編程幾乎都是用的socket。 ——有感于實際編程和開源項目研究。 我們深諳信息交流的價值&#xff0c;那網絡中進程之間…

JavaScript原生對象常用方法總結

這是4年前學習JavaScript基礎的學習筆記&#xff0c;當初是照著W3School教程學習的&#xff0c;4年恍然如云煙&#xff0c;仿佛還在昨天。現發布與此&#xff0c;留作紀念&#xff0c;紀念那段不悔的青蔥歲月。下面都是我學習W3C School教程中有關JavaScript寫的學習筆記&#…

[delphi]修改indy源碼后重新編譯

http://blog.csdn.net/nerdy/article/details/8702568 雖然indy有一身的毛病&#xff0c;但是一般情況下使用起來還是多方便的。 今天在做一個使用到indy的程序的時候&#xff0c;發現無論你怎么修改idhttp.request.accept-encoding&#xff0c;他都會在其后添加一個值 identit…

xcode8 崩潰問題

【1】、Xcode8代碼出現ubsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 1, privacy_setting: 2, enable_private_data: 0 2016-09-14 17:18:…

前端工具--less篇

前端工具–less篇 less 中文網http://www.bootcss.com/p/lesscss/ 常見錯誤及解決&#xff1a; sublime text 3 安裝less2css保存less出現錯誤 未安裝這個 npm install -g less-plugin-clean-css 未安裝這個 npm install less -gd less語法 LESS 做為 CSS 的一種形式的擴展&a…

從static變量導出問題解析 __declspec(dllexport) 和 __declspec(dllimport)的作用

這段時間要把tinyxml從靜態庫弄成動態庫&#xff0c;要用到__declspec(dllexport)和__declspec(dllimport)來導出dll和lib文件。終于弄明白了export和import的作用&#xff0c;下面從使用的角度來說明一下他們的功能。 首先要知道&#xff0c;頭文件是C的接口文件&#xff0c;不…

4月26日作業

2016年4月26日作業 一、項目整體績效評估1、*三E審計是什么的合稱&#xff1f;&#xff08;記&#xff09; 答&#xff1a;經濟審計&#xff0c;效率審計和效果審計2、霍爾三維結構是從哪三個方面考察系統工程的工作過程的&#xff1f; 答&#xff1a;邏輯&#xff0c;時間和知…

xcode8 快捷鍵失效

因為蘋果解決xcode ghost,把插件屏蔽了。 解決方法: 命令運行&#xff1a; sudo /usr/libexec/xpccachectl 然后必須重啟電腦后生效

CAS單點登錄配置[3]:服務器端配置

在準備工作&#xff0c;證書生成等工作完成后&#xff0c;本篇介紹服務器端的配置。 JDK配置 1我們將生成的cacerts文件分別拷貝到JDK目錄下的jre/lib/security目錄下及JRE對應的目錄中&#xff0c;如果之前存在此文件&#xff0c;請替換&#xff1b; ENDTomcat配置 1Step 1:將…

DLL動態鏈接庫的工作原理

"動態鏈接"這幾字指明了DLLs是如何工作的。 對于常規的函數庫&#xff0c;鏈接器從中拷貝它需要的所有庫函數&#xff0c;并把確切的函數地址傳送給調用這些函數的程序。 而對于DLLs&#xff0c;函數儲存在一個獨立的動態鏈接庫文件中。在創建Windows程序時&#xff…

remind程序

2019獨角獸企業重金招聘Python工程師標準>>> 用了兩個定時器。一個控制刷新時間&#xff0c;一個控制響鈴。 定時器響應函數Timer: int wk; if(nIDEvent1) { CTime tCTime::GetCurrentTime(); wkt.GetDayOfWeek()-1; m_mnt.Format("%Y 年 …

查看手機是否安裝微信客戶端

if (![[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:"weixin://"]] ) {[wcatBtn setHidden:YES];}

Caffe學習系列(7):solver及其配置

solver算是caffe的核心的核心&#xff0c;它協調著整個模型的運作。caffe程序運行必帶的一個參數就是solver配置文件。運行代碼一般為 # caffe train --solver*_slover.prototxt 在Deep Learning中&#xff0c;往往loss function是非凸的&#xff0c;沒有解析解&#xff0c;我們…

Qt DLL總結-創建及調用QT的 DLL

目錄 Qt DLL總結【一】-鏈接庫預備知識 Qt DLL總結【二】-創建及調用QT的 DLL Qt DLL總結【三】-VS2008Qt 使用QPluginLoader訪問DLL 開發環境&#xff1a;VS2008Qt4.7.4 最近看了不少Qt的DLL例子&#xff0c;總結一下如何創建和調用QT 動態鏈接庫。 先講一下對QT動態鏈接庫的…

Unable to install pirate

真機測試的時候&#xff0c;報這個錯誤&#xff0c;主要原因就是證書的問題 xcode7以上進行的真機測試&#xff0c;可以沒有使用證書&#xff0c;xcode可以進行的傻瓜操作幫助我們完成真機測試&#xff0c;但是今天我進行真機測試的時候報這個錯誤&#xff0c;同時xcode也不進…

memmove 對同一個指針不操作

memmove 對同一個指針不操作&#xff0c;所以調用memmove之前不用比較兩個指針是否相同 void CTestDLLDlg::OnBnClickedButton6() {const int size 999999;char* data new char[size];memset(data, 1, size - 1);char* data1 new char[size];memset(data1, a, size - 1);clo…

.Net JIT

.Net JIT(轉) JIT 轉載于:https://www.cnblogs.com/HelloMyWorld/p/5501135.html