Struts2 通过ognl表达式实现投影
发布时间 - 2026-01-11 03:27:56 点击率:次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/>
结果界面:
<!-- 正则表达式中,"^"代表开头,"$"代表结尾,"?"代表过滤 -->
<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表达式实现投影的全部内容,希望对大家有所帮助。有问题请留言,小编会及时回复大家的。感谢大家对网站的支持!
# struts2
# ognl表达式
# struts2的ognl表达式
# projection
# 详解Struts2动态方法调用
# Struts2 OGNL表达式实例详解
# Struts2修改上传文件大小限制方法解析
# AjaxFileUpload+Struts2实现多文件上传功能
# struts2开发流程及详细配置
# struts+spring+hibernate三个框架的整合
# Struts2获取参数的三种方法总结
# 第一个
# 小编
# 符合条件
# 俗话说
# 感谢大家
# 为空
# 正则表达式
# import
# java
# success
# util
# jsp
# result
# hpu
# ArrayList
# private
# public
# users
# ActionSupport
# User
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在橙子建站上传落地页?操作指南详解
如何用低价快速搭建高质量网站?
Laravel观察者模式如何使用_Laravel Model Observer配置
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】
Android仿QQ列表左滑删除操作
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
Laravel模型关联查询教程_Laravel Eloquent一对多关联写法
Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全
javascript日期怎么处理_如何格式化输出
如何快速生成凡客建站的专业级图册?
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
php json中文编码为null的解决办法
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
使用Dockerfile构建java web环境
Laravel如何优化应用性能?(缓存和优化命令)
Java遍历集合的三种方式
如何在景安云服务器上绑定域名并配置虚拟主机?
黑客如何通过漏洞一步步攻陷网站服务器?
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
如何在阿里云高效完成企业建站全流程?
Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理
中国移动官方网站首页入口 中国移动官网网页登录
Android实现代码画虚线边框背景效果
Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门
成都网站制作公司哪家好,四川省职工服务网是做什么用?
详解Oracle修改字段类型方法总结
LinuxShell函数封装方法_脚本复用设计思路【教程】
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
高端网站建设与定制开发一站式解决方案 中企动力
Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧
如何在VPS电脑上快速搭建网站?
Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理
如何挑选优质建站一级代理提升网站排名?
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
企业网站制作这些问题要关注
WEB开发之注册页面验证码倒计时代码的实现
Laravel Fortify是什么,和Jetstream有什么关系
Laravel如何处理表单验证?(Requests代码示例)
如何解决hover在ie6中的兼容性问题
Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册
EditPlus中的正则表达式实战(5)
微信小程序 canvas开发实例及注意事项
海南网站制作公司有哪些,海口网是哪家的?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
php485函数参数是什么意思_php485各参数详细说明【介绍】
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?

