国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - EL表達式簡介_動力節點Java學院整理

EL表達式簡介_動力節點Java學院整理

2020-12-06 14:36fjdingsd Java教程

EL全名為Expression Language,這篇文章主要給大家介紹EL表達式的主要作用及內容簡介,感興趣的朋友一起看看

jsp頁面中支持使用el表達式,el全名為expression language。el表達式的主要作用有:

  ① 獲取數據;

  ② 執行運算;

  ③ 使用el表達式的11大隱式對象;

  ④ 調用java方法。

  當然,el表達式還能配合jstl標簽,進行其他一些功能的顯示,例如迭代等等。 

  我們先來看使用el表達式來獲取數據

  在jsp頁面中使用${標識符}的形式,就是通知jsp引擎在servlet中調用pagecontext.findattribute(“標識符”)來獲取數據,具體是以標識符作為關鍵字從各個域中來尋找對象或屬性。如果找到,則以字符串形式返回顯示在jsp頁面上,如果沒找到則以空字符串””顯示,這一點跟<jsp:getproperty>標簽不一樣,也說明了el表達式比這個標簽要好用。

例1:獲取域中的普通數據 

?
1
2
3
4
5
<%
  string name = "ding";
  request.setattribute("personname", name);
 %> 
 ${personname }

瀏覽器中觀察: 

EL表達式簡介_動力節點Java學院整理 

例2:獲取域中的對象或屬性

?
1
2
3
4
5
6
<%
 person p = new person("ding",25);
  request.setattribute("person", p);
 %> 
 ${person }   <br>
 ${person.name } <br>

瀏覽器中觀察:  

EL表達式簡介_動力節點Java學院整理

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

  在domain包中的兩個javabean:

?
1
2
3
4
5
6
7
8
9
10
public class person {
  private string name;
  private int age;
 private address address;
 。。。省略各個屬性的get和set方法
  }
 public class address {
 private string city; 
  。。。省略city屬性的get和set方法
 }

在jsp頁面中代碼為:

?
1
2
3
4
5
6
7
8
<%
   person p = new person();
  address a = new address();
  a.setcity("amoy");
  p.setaddress(a);
  request.setattribute("person", p);
 %>
 ${person.address.city }

在瀏覽器中觀察: 

EL表達式簡介_動力節點Java學院整理 

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

例3-2:在web工程中使用el表達式來獲取當前web工程路徑

?
1
${pagecontext.request.contextpath}

該el表達式的值為:  

EL表達式簡介_動力節點Java學院整理

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

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

?
1
2
3
4
5
6
7
<%
  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表達式簡介_動力節點Java學院整理

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

?
1
2
3
4
5
6
7
8
9
<%
  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表達式簡介_動力節點Java學院整理

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

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

el表達式的不足:無論是從list集合還是從map集合中,都無法使用el表達式來迭代集合,因此如果需要迭代集合,需要el表達式配合jstl標簽使用。 

  el表達式支持運算,不管是算術運算、邏輯運算還是關系運算:

  語法:${運算表達式}  

EL表達式簡介_動力節點Java學院整理

EL表達式簡介_動力節點Java學院整理

(此處省略算術運算符)

例6:

?
1
2
3
4
5
<%
  request.setattribute("username", "root");
  request.setattribute("password", "123");
 %>
 ${username == "root" && password == "123" }

瀏覽器上顯示:true。 

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

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

例7:

?
1
2
3
4
5
6
7
8
<%
  request.setattribute("person", null);
   request.setattribute("address", "");
  request.setattribute("user", new user());
 %>
 ${empty(person)}  <br>
 ${empty(address)} <br>
 ${empty(user)}   <br>

瀏覽器中觀察: 

EL表達式簡介_動力節點Java學院整理 

二元表達式:

例8:

?
1
2
3
4
5
6
<%
  user user = new user();
  user.setusername("fjdingsd");
  pagecontext.setattribute("user", user);
 %> 
歡迎您:${user!=null ? user.username : '' }

瀏覽器中觀察:

EL表達式簡介_動力節點Java學院整理  

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

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

例9: 

?
1
2
3
4
5
<%
   request.setattribute("gender", "female");
  %>
  <input type="radio" name="gender" value="male" ${gender=='male'?'checked':'' }>男   
  <input type="radio" name="gender" value="female" ${gender=='female'?'checked':'' }>女

瀏覽器中顯示:  

EL表達式簡介_動力節點Java學院整理

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产乱码精品一区二区三区五月婷 | 日韩欧美成人影院 | 国产精品免费视频观看 | 亚洲综合国产 | 美欧一级片 | 在线播放亚洲 | 亚洲清色| 伊人激情综合网 | 免费高清av| 久久久久久九九九 | 日韩免费看 | 希岛爱理av一区二区三区 | 国产中文字幕在线免费观看 | 久在线看| 久久久精品一区二区 | 免费在线观看黄色 | 欧美日韩精品一区二区在线观看 | 午夜精品网站 | 黄色片地址 | 免费a级毛片大学生免费观看 | 中文字幕 在线观看 | 这里只有精品国产 | 国产精品2区 | jizz国产 | 不卡视频一二三区 | 久久精品久久久久久 | 国产精品亲子伦av一区二区三区 | 精品久久久网站 | 亚洲国产精品一区二区www | 91精品国产综合久久久久久漫画 | 国产综合亚洲精品一区二 | 日韩精品一区二区三区在线播放 | 欧美日韩一区二区三区免费视频 | 中文字幕精品一区 | 亚洲一区二区三区高清 | 日韩午夜一级片 | 亚洲精品乱码8久久久久久日本 | 亚洲精品短视频 | 蜜桃精品久久久久久久免费影院 | 亚洲成av人影片在线观看 | 国产韩国精品一区二区三区 |