欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Struts2 通過ognl表達式實現(xiàn)投影

 更新時間:2017年09月28日 16:03:23   作者:光仔December  
這篇文章主要介紹了Struts2 通過ognl表達式實現(xiàn)投影,具有一定參考價值,需要的朋友可以了解下。

projection(投影):俗話說就是過濾,就是過濾器把符合條件的過濾出來

struts.xml:

<package name="ognl" namespace="/ognl" extends="struts-default"> 
 <action name="pro" class="cn.edu.hpu.ognl.OgnlAction4"> 
      <result name="success">/ognl.jsp</result> 
    </action> 
</package> 

OgnlAction4.java:

package cn.edu.hpu.ognl; 
import java.util.ArrayList; 
import cn.edu.hpu.mode.User; 
import com.opensymphony.xwork2.ActionSupport; 
public class OgnlAction4 extends ActionSupport{ 
  private ArrayList<User> users; 
  public OgnlAction4(){ 
    users=new ArrayList<User>(); 
    User user1=new User(); 
    user1.setAge(18); 
    User user2=new User(); 
    user2.setAge(1); 
    User user3=new User(); 
    user3.setAge(21); 
    User user4=new User(); 
    user4.setAge(23); 
    users.add(user1); 
    users.add(user2); 
    users.add(user3); 
    users.add(user4); 
  } 
  public ArrayList<User> getUsers() { 
    return users; 
  } 
  public void setUsers(ArrayList<User> users) { 
    this.users = users; 
  } 
  @Override 
  public String execute() throws Exception { 
    // TODO Auto-generated method stub 
    return "success"; 
  } 
} 

鏈接:

過濾:<a href="<%=basePath%>ognl/pro" rel="external nofollow" >OGNL9</a><br/> 

結(jié)果界面:

<!-- 正則表達式中,"^"代表開頭,"$"代表結(jié)尾,"?"代表過濾 --> 
<li>投影(過濾):<s:property value="users.{?#this.age==1}.{age}"/><br/> 
<!-- 找到所有年齡大于1的user,取第一個 --> 
<li>投影:<s:property value="users.{^#this.age>1}.{age}"/><br/> 
<!-- 找到所有年齡大于1的user,取最后一個 --> 
<li>投影:<s:property value="users.{$#this.age>1}.{age}"/><br/> 
<!-- 找到所有年齡大于1的集合,判斷這個集合是否為空 --> 
<li>投影:<s:property value="users.{$#this.age>1}.{age} == null"/><br/> 

結(jié)果:

投影(過濾):[1]
投影:[18]
投影:[23]
投影:false

總結(jié)

以上就是本文關(guān)于Struts2 通過ognl表達式實現(xiàn)投影的全部內(nèi)容,希望對大家有所幫助。有問題請留言,小編會及時回復(fù)大家的。感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • SpringBootTest測試時不啟動程序的問題

    SpringBootTest測試時不啟動程序的問題

    這篇文章主要介紹了SpringBootTest測試時不啟動程序的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Spring注解之@validated使用詳解

    Spring注解之@validated使用詳解

    spring-boot中可以用@validated來校驗數(shù)據(jù),如果數(shù)據(jù)異常則會統(tǒng)一拋出異常,方便異常中心統(tǒng)一處理,這篇文章主要介紹了Spring注解之@validated使用,需要的朋友可以參考下
    2023-01-01
  • Java源碼解析之HashMap的put、resize方法詳解

    Java源碼解析之HashMap的put、resize方法詳解

    這篇文章主要介紹了Java源碼解析之HashMap的put、resize方法詳解,文中有非常詳細的代碼示例,對正在學(xué)習(xí)java的小伙伴們有很大的幫助,需要的朋友可以參考下
    2021-04-04
  • Java full gc觸發(fā)情況實例解析

    Java full gc觸發(fā)情況實例解析

    這篇文章主要介紹了Java full gc觸發(fā)情況實例解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 用IntelliJ IDEA看Java類圖的方法(圖文)

    用IntelliJ IDEA看Java類圖的方法(圖文)

    這篇文章主要介紹了用IntelliJ IDEA看Java類圖的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 使用Java8實現(xiàn)模板方法模式的改造

    使用Java8實現(xiàn)模板方法模式的改造

    這篇文章主要為大家詳細介紹了如何使用Java8實現(xiàn)模板方法模式的改造,文中的示例代碼講解詳細,對我們深入了解java8有一定的幫助,感興趣的可以了了解一下
    2023-01-01
  • Java中Cglib代理類重寫邏輯詳解

    Java中Cglib代理類重寫邏輯詳解

    這篇文章主要介紹了Java中Cglib代理類重寫邏輯詳解,代理類中只會維護NoOp這個回調(diào)屬性,并不會生成目標(biāo)類MyService中的noOp所對應(yīng)的方法,需要的朋友可以參考下
    2023-11-11
  • 簡單了解Java創(chuàng)建線程兩種方法

    簡單了解Java創(chuàng)建線程兩種方法

    這篇文章主要介紹了簡單了解Java創(chuàng)建線程兩種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • java類加載機制、類加載器、自定義類加載器的案例

    java類加載機制、類加載器、自定義類加載器的案例

    這篇文章主要介紹了java類加載機制、類加載器、自定義類加載器的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Mybatis-Plus字段策略FieldStrategy的使用

    Mybatis-Plus字段策略FieldStrategy的使用

    本文主要介紹了Mybatis-Plus字段策略FieldStrategy的使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08

最新評論