自己总结的struts中的访问方法

本文详细介绍了Struts2框架中表达式语言(EL)和对象图导航语言(OGNL)的不同之处及其应用场景。通过具体的代码示例,展示了如何在JSP页面上使用EL语法和OGNL语法获取不同作用域内的属性值。

private String userName;
private ActionContext ac;
private Map request;
private Map session;
private Map application;

@Override
public String execute() throws Exception {
ac=ActionContext.getContext();
request=(Map) ac.get("request");
session=ac.getSession();
application=ac.getApplication();

request.put("req", "request中的requst属性");
session.put("req", "session中的requst属性");

session.put("ses", "sesion属性");
application.put("app", "application属性");

ac.put("action", "action中的值");

return super.execute();
}


--------------------------------------------------------------------------------------------------------


<body>

  <%--
    总结$ # %的区别
  $用于 i18n 和 struts 配置文件
  #取得 ActionContext 的值
  %将原来的文本串解析为 ognl,对于本来就是 ognl 的文本不起作用。形式:%{要解析的文本串}--%>


    登录成功:</br> 
   <h4>以下使用el的形式来接受</h4>
    ${requestScope.req}</br>
    ${sessionScope.ses}</br>
    ${sessionScope.req}</br>
    ${applicationScope.app }</br>
    
<h4>以下使用scope.getAttribute的形式来接受</h4>
request:<%=request.getAttribute("req")%><br> 
session:<%=session.getAttribute("ses")%><br> 
application:<%=application.getAttribute("app")%><br>
<%--
注意:struts2 中 ,OGNL 表达式需要配合 struts 的标签才可以使用
--%>
<h1>以下使用struts2 ongl#号形式来表示</h1>
获取action属性: <s:property value="#request.action"/></br>
获取Request属性:<s:property value="#request.req"/><br>
        获取Session属性:<s:property value="#session.ses"/><br>
        获取application属性:<s:property value="#application.app"/><br>
        获取Parameters属性:<s:property value="#parameters.userName"/>
        

<h2>以下用struts2 %形式来表示</h2>
<%--
注意:struts2 中 , %号形式 可以转换成OGNL 表达式,仍需要配合 struts 的标签才可以使用
--%> 
获取action属性:<s:property value="%{action}"/><br>
获取Request属性:<s:property value="%{request.req}"/><br>
        获取Session属性:<s:property value="%{session.ses}"/><br>
        获取application属性:<s:property value="%{application.app}"/><br>
        获取Parameters属性:<s:property value="%{parameters.userName}"/></br>
    
<s:debug></s:debug>
</body>
本指南详细阐述基于Python编程语言结合OpenCV计算机视觉库构建实时眼部状态分析系统的技术流程。该系统能够准确识别眼部区域,并对眨眼动作与持续闭眼状态进行判别。OpenCV作为功能强大的图像处理工具库,配合Python简洁的语法特性与丰富的第三方模块支持,为开发此类视觉应用提供了理想环境。 在环境配置阶段,除基础Python运行环境外,还需安装OpenCV核心模块与dlib机器学习库。dlib库内置的HOG(方向梯度直方图)特征检测算法在面部特征定位方面表现卓越。 技术实现包含以下关键环节: - 面部区域检测:采用预训练的Haar级联分类器或HOG特征检测器完成初始人脸定位,为后续眼部分析建立基础坐标系 - 眼部精确定位:基于已识别的人脸区域,运用dlib提供的面部特征点预测模型准确标定双眼位置坐标 - 眼睑轮廓分析:通过OpenCV的轮廓提取算法精确勾勒眼睑边缘形态,为状态判别提供几何特征依据 - 眨眼动作识别:通过连续帧序列分析眼睑开合度变化,建立动态阈值模型判断瞬时闭合动作 - 持续闭眼检测:设定更严格的状态持续时间与闭合程度双重标准,准确识别长时间闭眼行为 - 实时处理架构:构建视频流处理管线,通过帧捕获、特征分析、状态判断的循环流程实现实时监控 完整的技术文档应包含模块化代码实现、依赖库安装指引、参数调优指南及常见问题解决方案。示例代码需具备完整的错误处理机制与性能优化建议,涵盖图像预处理、光照补偿等实际应用中的关键技术点。 掌握该技术体系不仅有助于深入理解计算机视觉原理,更为疲劳驾驶预警、医疗监护等实际应用场景提供了可靠的技术基础。后续优化方向可包括多模态特征融合、深度学习模型集成等进阶研究领域。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值