作为基于MVC模式的Web应用最经典框架,Struts已经正式推出了1.1版本,该版本在以往版本的基础上,提供了许多激动人心的新功能。本文就将带你走进Struts 1.1去深入地了解这些功能。 说明:希望本文的读者能有一定的Struts使用基础。 Model 2 Struts 是基于Model 2之上的,而Model 2是经典的MVC(模型-视图-控制器)模型的Web应用变体,这个改变主要是由于网络应用的特性--HTTP协议的无状态性引起的。Model 2的目的和MVC一样,也是利用控制器来分离模型和视图,达到一种层间松散耦合的效果,提高系统灵活性、复用性和可维护性。在多数情况下,你可以将 Model 2与MVC等同起来。 下图表示一个基于Java技术的典型网络应用,从中可以看出Model 2中的各个部分是如何对应于Java中各种现有技术的。 论Struts 1.1框架的关键特性及其在Model 2架构中的作用。 Struts 1.1是一个基于Model 2的MVC框架,它旨在解决Web应用开发中的问题,特别是HTTP协议无状态性的挑战。Model 2架构是MVC模式的一个变种,专门针对Web环境设计,它强调通过控制器来分离模型和视图,从而实现更高效的代码组织和更低的耦合度。在Model 2中,模型负责业务逻辑,视图负责显示,而控制器则协调这两个组件之间的交互。 Struts 1.1框架的核心组件包括ActionServlet(控制器)、Action(模型处理)、ActionForm(表单数据载体)和JSP(视图)。ActionServlet是MVC中的控制器,它解析HTTP请求,根据struts-config.xml配置文件调度Action对象,同时管理其他配置如ActionConfig、FormBeanConfig等。ActionForm对象负责收集用户输入并验证数据,Action类执行实际的业务逻辑,最后通过ActionForward指示ActionServlet将响应转发给合适的JSP页面。 Struts 1.1引入了模块化(Module)的概念,每个模块代表一个独立的子系统,这解决了Struts 1.0单一配置文件的问题,提高了应用的可扩展性和可维护性。每个模块有自己的配置信息,如Action映射、表单bean、转发等,使得大型应用的结构更加清晰。 在处理请求时,ActionServlet首先读取配置文件,初始化模块配置,然后根据请求URL找到对应的Action,如果找不到,则可能直接转发到JSP页面。ActionForm在执行Action之前,可以预先填充并验证数据,Action执行后返回ActionForward,控制器根据这个指示将结果传递给客户端。 在设计模式上,Struts 1.1鼓励开发者将业务逻辑放入Action类,而数据校验和业务实体(form beans)则封装在ActionForm中。这种分离提高了代码的可重用性和可测试性。Action类通常只包含execute方法,专注于流程控制,不涉及具体业务操作,而ActionForm则负责数据的验证和传递。 Struts 1.1还提供了一些其他改进,如增强的国际化支持、更好的错误处理机制和更丰富的自定义标签库,这些都是为了提高开发效率和用户体验。 Struts 1.1是Model 2架构的优秀实现,它通过控制器、模型和视图的分离,实现了Web应用的高效组织和维护。通过深入理解Struts 1.1的组件和工作原理,开发者可以更好地构建可扩展、可维护的大型企业级应用。在实际开发中,正确地使用Struts 1.1的各种特性,能够显著提升开发效率和应用质量。
- wujiyu1152015-08-21还可以吧,可以参考参考
- 粉丝: 119
- 资源: 187
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- GVC-全球价值链参与地位指数,基于ICIO表,(Wang等 2017a)计算方法
- 易语言ADS指纹浏览器管理工具
- 易语言奇易模块5.3.6
- cad定制家具平面图工具-(FG)门板覆盖柜体
- asp.net 原生js代码及HTML实现多文件分片上传功能(自定义上传文件大小、文件上传类型)
- whl@pip install pyaudio ERROR: Failed building wheel for pyaudio
- Constantsfd密钥和权限集合.kt
- 基于Java的财务报销管理系统后端开发源码
- 基于Python核心技术的cola项目设计源码介绍
- 基于Python及多语言集成的TSDT软件过程改进设计源码