Struts2 通过ognl表达式实现投影

2025-05-29 0 15

projection(投影):俗话说就是过滤,就是过滤器把符合条件的过滤出来

struts.xml:

?

1

2

3

4

5
<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:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33
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";

}

}

链接:

?

1
过滤:<a href="<%=basePath%>ognl/pro" rel="external nofollow" >OGNL9</a><br/>

结果界面:

?

1

2

3

4

5

6

7

8
<!-- 正则表达式中,"^"代表开头,"$"代表结尾,"?"代表过滤 -->

<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/>

结果:

投影(过滤):[1]
投影:[18]
投影:[23]
投影:false

总结

以上就是本文关于Struts2 通过ognl表达式实现投影的全部内容,希望对大家有所帮助。有问题请留言,小编会及时回复大家的。感谢大家对快网idc网站的支持!

原文链接:http://blog.csdn.net/acmman/article/details/47070087

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 Struts2 通过ognl表达式实现投影 https://www.kuaiidc.com/114576.html

相关文章

发表评论
暂无评论