Struts2框架解析:OGNL表达式语言与#号用法
需积分: 9 59 浏览量
更新于2024-08-18
收藏 1.36MB PPT 举报
"OGNL表达式语言(#号的用法)-struts ppt"
OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于在Java应用程序中获取和设置对象属性。在Struts2框架中,OGNL是核心组件之一,主要用于视图层的数据绑定和表达式计算。`#`号在OGNL表达式中具有特殊含义,它标志着访问OGNL上下文和Action上下文的开始。
用法1:当`#`前缀被用来访问OGNL上下文或Action上下文时,例如`#request['userName']`、`#session['userName']`和`#application['userName']`,这分别代表了HTTP请求、会话和应用范围内的变量。这些上下文是Struts2处理用户请求时常用的对象,它们允许开发者存储和检索与特定用户交互有关的数据。
Struts2是一个流行的Java MVC框架,它的出现旨在解决Web应用程序开发中常见的问题,如页面导航、数据验证、布局一致性、可扩展性、国际化、Ajax支持以及防止表单重复提交等。相比于其前身Struts1,Struts2有以下几个显著优势:
1. **无侵入式设计**:Struts2的架构设计使得应用不再紧密依赖于ServletAPI和StrutsAPI,这降低了框架与业务逻辑之间的耦合度,使得代码更加灵活和易于维护。
2. **拦截器**:Struts2引入了拦截器机制,这是基于AOP(面向切面编程)的概念,可以方便地实现如权限控制、日志记录等跨切面的功能。
3. **类型转换器**:框架内建的类型转换器系统使得请求参数能自动转换为所需类型,无需像Struts1那样手动注册转换器。
4. **多视图技术支持**:Struts2支持JSP、FreeMarker、Velocity等多种视图技术,提高了视图层的灵活性。
5. **输入验证**:Struts2的验证机制可以针对特定方法进行,解决了Struts1中验证范围较窄的问题。
6. **国际化管理**:Struts2提供了全球化资源管理,支持全局、包级和Action级别的国际化配置。
从Struts1迁移到Struts2并非简单的扩展,实际上Struts2在很大程度上借鉴了WebWork框架的设计,因此升级过程需要考虑现有代码的兼容性和重构。升级步骤包括但不限于重新设计Action类、迁移配置文件、调整拦截器链等。
OGNL的`#`号用法在Struts2中扮演了关键角色,它简化了对请求上下文的访问,而Struts2框架则以其先进的设计和丰富的特性,成为Java Web开发领域的一个强大工具。
2009-01-15 上传
2011-06-10 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2009-04-01 上传
2014-10-19 上传
2010-03-10 上传
点击了解资源详情
三里屯一级杠精
- 粉丝: 36
- 资源: 2万+
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍