欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

EL表達式的作用有哪些-創(chuàng)新互聯(lián)

EL表達式的作用有哪些?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

德安ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

JSP頁面中支持使用EL表達式,EL全名為Expression Language。EL表達式的主要作用有:

 ?、?獲取數(shù)據(jù);

 ?、?執(zhí)行運算;

 ?、?使用EL表達式的11大隱式對象;

 ?、?調(diào)用Java方法。

  當(dāng)然,EL表達式還能配合JSTL標(biāo)簽,進行其他一些功能的顯示,例如迭代等等。 

  我們先來看使用EL表達式來獲取數(shù)據(jù)

  在JSP頁面中使用${標(biāo)識符}的形式,就是通知JSP引擎在Servlet中調(diào)用pageContext.findAttribute(“標(biāo)識符”)來獲取數(shù)據(jù),具體是以標(biāo)識符作為關(guān)鍵字從各個域中來尋找對象或?qū)傩?。如果找到,則以字符串形式返回顯示在JSP頁面上,如果沒找到則以空字符串””顯示,這一點跟<jsp:getProperty>標(biāo)簽不一樣,也說明了EL表達式比這個標(biāo)簽要好用。

例1:獲取域中的普通數(shù)據(jù) 

 <%
   String name = "Ding";
   request.setAttribute("personName", name);
  %>  
  ${personName }

瀏覽器中觀察: 

EL表達式的作用有哪些 

例2:獲取域中的對象或?qū)傩?/p>

 <%
  Person p = new Person("Ding",25);
   request.setAttribute("person", p);
  %>  
  ${person }   <br>
  ${person.name } <br>

瀏覽器中觀察:  

EL表達式的作用有哪些

例3:獲取對象中的對象的屬性

  在domain包中的兩個JavaBean:

public class Person { 
  private String name;
  private int age;
 private Address address; 
 。。。省略各個屬性的get和set方法
  } 
 public class Address {
 private String city;  
  。。。省略city屬性的get和set方法
 }

在JSP頁面中代碼為:

 <%
    Person p = new Person();
   Address a = new Address();
   a.setCity("Amoy");
   p.setAddress(a);
   request.setAttribute("person", p);
  %> 
  ${person.address.city }

在瀏覽器中觀察: 

EL表達式的作用有哪些 

   注意:這種對象中屬性還是對象的,要特別注意屬性的名稱一定在JSP上表現(xiàn)一致,否則會拋出異常。

例3-2:在web工程中使用EL表達式來獲取當(dāng)前web工程路徑

 ${pageContext.request.contextPath}

該EL表達式的值為:  

EL表達式的作用有哪些

  注意,該表達式顯示的最前面就已經(jīng)有一個斜杠了”/”。這里在EL表達式中的“pageContext”是EL中的一個隱式對象,具體請看下一篇博客。

例4:取出List集合中的元素

 <%
   List<Person> personList = new ArrayList<Person>();
  personList.add(new Person("Ding",25));
  personList.add(new Person("LRR",24));
  request.setAttribute("persons",personList);
  %>  
  ${persons[0].name } love ${persons[1].name}

瀏覽器中觀察:  

EL表達式的作用有哪些

例5:取出Map集合中的元素

 <%
   Map<String,Person> personMap = new HashMap<String,Person>();
  personMap.put("p1",new Person("Ding",25));
   personMap.put("p2",new Person("LRR",24));   
  request.setAttribute("pMap", personMap);
  %>  
  ${pMap.p1.name } <br>
  love <br>
  ${pMap['p2'].name }

在瀏覽器中觀察:  

EL表達式的作用有哪些

  可以看到除了用”.”來取得屬性或者Map集合中key對應(yīng)的值,還可以使用”[‘標(biāo)識符']”來獲取(注意中括號中有單引號),這個尤其在標(biāo)識符為數(shù)字的情況下,使用”.”會報錯,而使用”[‘標(biāo)識符']”則不會報錯。

  注意,EL表達式能獲取對象的屬性是因為該對象中的字段提供了get方法,所以成為了屬性,EL僅能獲取對象的屬性,而不能獲取對象的字段,這一點要明確。

EL表達式的不足:無論是從List集合還是從Map集合中,都無法使用EL表達式來迭代集合,因此如果需要迭代集合,需要EL表達式配合JSTL標(biāo)簽使用。 

  EL表達式支持運算,不管是算術(shù)運算、邏輯運算還是關(guān)系運算:

  語法:${運算表達式}  

EL表達式的作用有哪些

EL表達式的作用有哪些

(此處省略算術(shù)運算符)

例6:

 <%
   request.setAttribute("username", "root");
   request.setAttribute("password", "123");
  %>
  ${username == "root" && password == "123" }

瀏覽器上顯示:true。 

除了上述三種簡單的運算符外,EL表達式還支持 empty運算符和二元表達式(表達式?值1:值2) 

empty運算符:檢測對象是否為null或某數(shù)據(jù)是否為””空字符串

例7:

 <%
   request.setAttribute("person", null);
    request.setAttribute("address", "");
   request.setAttribute("user", new User());
  %>
  ${empty(person)}  <br>
  ${empty(address)} <br>
  ${empty(user)}   <br>

瀏覽器中觀察: 

EL表達式的作用有哪些 

二元表達式:

例8:

 <%
   User user = new User();
   user.setUsername("fjdingsd");
   pageContext.setAttribute("user", user);
  %>  
 歡迎您:${user!=null ? user.username : '' }

瀏覽器中觀察:

EL表達式的作用有哪些  

  上面這個例子使用EL表達式的二元表達式,如果user對象不為null,則輸出該對象中的username屬性,否則輸出空字符。 

  二元表達式的另一種用途還可以用來做數(shù)據(jù)回顯,假設(shè)有一個用戶要修改其注冊信息,那么服務(wù)器(或從數(shù)據(jù)庫)在返回其數(shù)據(jù)到顯示頁面時,應(yīng)該在他編輯過的信息重新顯示出來。

例9:

<%
   request.setAttribute("gender", "female");
  %>
  <input type="radio" name="gender" value="male" ${gender=='male'?'checked':'' }>男 &nbsp;  
  <input type="radio" name="gender" value="female" ${gender=='female'?'checked':'' }>女

 

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

分享名稱:EL表達式的作用有哪些-創(chuàng)新互聯(lián)
鏈接分享:http://aaarwkj.com/article28/dophcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作App開發(fā)、品牌網(wǎng)站制作、商城網(wǎng)站網(wǎng)頁設(shè)計公司、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
人成午夜视频在线播放| 国产91在线观看网站| 久久国产亚洲欧美日韩精品| 中文字幕人妻熟女在线| 婷婷亚洲悠悠色悠在线| 日本韩国精品视频在线| 中文字幕国产精品资源| 青青草视频免费观看高清在线观看新| 久久三级中文欧大战字幕| 這裏隻有无码人妻久久| 国产三级av高清一区二区| 少妇又色又爽又高潮欧美| 中文字幕亚洲天堂久久| 少妇按摩高潮呻吟av| 偷拍一区二区三区免费| 女同久久精品国产精品天堂99| 人妻天天爽夜夜爽欧美色| 国产内射一级一片内射高清视频1| 久久国产精品99久久久| 久久精品国产亚洲熟女| 亚洲一区乱码精品中文| 成人午夜福利视频免费观看| 蜜桃av网站在线播放| 日韩不卡高清免费在线视频| 日韩一区二区亚洲精品| 日本人妻风俗店中文字幕| 久久国产精品久久国产精品| 国产国语久久91老女人| 国产精品一二三在线看| 最新国产成人免费在线视频| 国产成人综合亚洲一区| 日韩欧美一区二区中文字幕视频| 可以免费看的欧美黄片| 97在线资源视频播放| 99热精品免费在线观看| 亚洲黄色片成年人免费观看| 亚洲乱码日韩电影网站| 精品一级人片内射视频| 日韩精品在线播放观看| 亚洲一区二区视频在线观看免费| 91免费视频精品麻豆|