Struts2入门教程:OGNL表达式与优势解析
需积分: 9 3 浏览量
更新于2024-08-17
收藏 365KB PPT 举报
"本文主要介绍了OGNL表达式语言在Struts2框架中的应用,并强调了Struts2相较于Struts1的优势。Struts2是一个基于MVC模式的框架,具有无侵入式设计、拦截器支持AOP编程、类型转换器、多样的表现层技术以及强大的输入校验和国际化资源管理等功能。同时,文中提到了搭建Struts2开发环境的基本步骤,包括获取必要的jar文件、配置Struts2的XML文件以及在web.xml中设置启动配置。"
在Struts2框架中,OGNL(Object-Graph Navigation Language)是默认的表达式语言,它提供了比EL(Expression Language)更为丰富的功能。OGNL支持对象的方法调用,例如`xxx.sayHello()`,允许开发者直接通过表达式执行对象的方法。此外,OGNL还支持类的静态方法调用和值访问,可以通过`@[类全名(包括包路径)]@[方法名 | 值名]`这样的格式,如`@java.lang.String@format('foo %s', 'bar')`或`@cn.itcast.Constant@APP_NAME`。这使得开发者能够方便地调用任何类的静态方法或者访问静态变量。
Struts2是在WebWork2的基础上发展起来的,与Struts1相比,其设计更为灵活和强大。首先,Struts2采用了无侵入式设计,使得应用不依赖ServletAPI和StrutsAPI,降低了系统的耦合度。在Struts1的Action类中,如`OrderListAction`,需要继承`Action`类并实现`execute`方法,而在Struts2中,这样的侵入式设计被避免了。
其次,Struts2引入了拦截器(Interceptor)机制,这使得AOP(面向切面编程)得以实现,如权限控制、日志记录等功能可以通过拦截器轻松实现。此外,Struts2内置了类型转换器,自动将请求参数转换为所需类型,简化了开发者的工作。在Struts1中,实现类似功能需要手动注册类型转换器。
Struts2还支持多种视图技术,如JSP、FreeMarker和Velocity等,提供了更大的灵活性。输入校验方面,Struts2可以针对特定方法进行校验,解决了Struts1中校验分散的问题。对于国际化资源管理,Struts2提供了全局、包和Action级别的管理方式,使得资源管理更为高效。
为了搭建Struts2的开发环境,开发者需要获取Struts2的jar文件,编写Struts2的配置文件(如struts.xml),并在项目的web.xml中添加相应的配置来启动Struts2框架。这通常是搭建Struts2环境的基础步骤,确保了Struts2框架能正常运行并处理HTTP请求。
2010-05-26 上传
2011-07-29 上传
2011-03-15 上传
点击了解资源详情
2011-06-28 上传
2011-02-21 上传
点击了解资源详情
点击了解资源详情
2008-07-10 上传
巴黎巨星岬太郎
- 粉丝: 17
- 资源: 2万+
最新资源
- 新代数控API接口实现CNC数据采集技术解析
- Java版Window任务管理器的设计与实现
- 响应式网页模板及前端源码合集:HTML、CSS、JS与H5
- 可爱贪吃蛇动画特效的Canvas实现教程
- 微信小程序婚礼邀请函教程
- SOCR UCLA WebGis修改:整合世界银行数据
- BUPT计网课程设计:实现具有中继转发功能的DNS服务器
- C# Winform记事本工具开发教程与功能介绍
- 移动端自适应H5网页模板与前端源码包
- Logadm日志管理工具:创建与删除日志条目的详细指南
- 双日记微信小程序开源项目-百度地图集成
- ThreeJS天空盒素材集锦 35+ 优质效果
- 百度地图Java源码深度解析:GoogleDapper中文翻译与应用
- Linux系统调查工具:BashScripts脚本集合
- Kubernetes v1.20 完整二进制安装指南与脚本
- 百度地图开发java源码-KSYMediaPlayerKit_Android库更新与使用说明