描述Struts体系结构?对应各个部分的开发工作主要包括哪些?
2013-05-10 14:05
381 查看
Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的体系结构与工作原理如下图2所示:
1)模型(Model)
在Struts的体系结构中,模型分为两个部分:系统的内部状态和可以改变状态的操作(事务逻辑)。内部状态通常由一组Actinform
Bean表示。根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。比如购物车bean,它拥有用户购买商品的信息,可能还有checkOut()方法用来检查用户的信用卡,并向仓库发定货信息。小型程序中,操作可能会被内嵌在Action类,它是struts框架中控制器角色的一部分。当逻辑简单时这个方法很适合。建议用户将事务逻辑(要做什么)与Action类所扮演的角色(决定做什么)分开。
2)视图(View)
视图主要由JSP建立,struts包含扩展自定义标签库(TagLib),可以简化创建完全国际化用户界面的过程。目前的标签库包括:Bean
Tags、HTML tags、Logic Tags、Nested
Tags 以及Template Tags等。
3)控制器(Controller)
在struts中,基本的控制器组件是ActionServlet类中的实例servelt,实际使用的servlet在配置文件中由一组映射(由ActionMapping类进行描述)进行定义。对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成的,其中Action扮演了真正的业务逻辑的实现者,ActionMapping与ActionForward则指定了不同业务逻辑或流程的运行方向。struts-config.xml
文件配置控制器。
1)模型(Model)
在Struts的体系结构中,模型分为两个部分:系统的内部状态和可以改变状态的操作(事务逻辑)。内部状态通常由一组Actinform
Bean表示。根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。比如购物车bean,它拥有用户购买商品的信息,可能还有checkOut()方法用来检查用户的信用卡,并向仓库发定货信息。小型程序中,操作可能会被内嵌在Action类,它是struts框架中控制器角色的一部分。当逻辑简单时这个方法很适合。建议用户将事务逻辑(要做什么)与Action类所扮演的角色(决定做什么)分开。
2)视图(View)
视图主要由JSP建立,struts包含扩展自定义标签库(TagLib),可以简化创建完全国际化用户界面的过程。目前的标签库包括:Bean
Tags、HTML tags、Logic Tags、Nested
Tags 以及Template Tags等。
3)控制器(Controller)
在struts中,基本的控制器组件是ActionServlet类中的实例servelt,实际使用的servlet在配置文件中由一组映射(由ActionMapping类进行描述)进行定义。对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成的,其中Action扮演了真正的业务逻辑的实现者,ActionMapping与ActionForward则指定了不同业务逻辑或流程的运行方向。struts-config.xml
文件配置控制器。
相关文章推荐
- 描述Struts体系结构?对应各个部分的开发工作主要包括哪些?
- 游戏程序开发的工作主要包括哪些方面
- 敏捷软件开发主要包括哪些方法
- 一个软件项目主要分为哪些阶段?各个阶段主要做哪些工作?
- [OOAD]问题域部分的设计主要任务对应的编程代码工作。
- 知名互联网公司校招 Java 开发岗面试知识点 本场 Chat 从作者的实际面试经历出发,给大家详细阐述 Java 开发岗位在校招面试中所涉及的知识点,包括重点和难点。主要包括以下几个部分: Ja
- [职场生存]细节和感觉[二]:细节包括哪些部分?
- 游戏开发主要学哪些课程?
- 学院有意找你开发一个“毕业论文选题管理”的软件,在正式承接本项目的开发任务之前,你认为需要做哪些前期准备工作。
- 股指期货合约主要包括哪些要素
- Web开发面临的挑战主要有哪些?
- X5开发团队看板 维护工作 根据计划生成工作 部分代码
- 使用 WS-BPEL 和 IoC 构建可配置工作流程,第 2 部分_开发并托管 BPEL 工作流程
- HTML5的特性主要包括哪些内容
- [置顶] Tiger LeapV1.0打包发布,里面包含了mmsplayer,wzplayer,tlplayer各个平台的播放器用例.包括部分source code
- [职场生存]细节和感觉[二]:细节包括哪些部分?
- 在开发WEB应用程序时, 如何提高WEB应用程序的性能. 主要把注意力集中在哪些地方..~~!
- 百度编辑器UEEDITOR使用简单介绍 UEditor表单提交和后台交互详解 最后更新对应的版本:1.2.5.1 教程描述: 富文本编辑器的使用开发中,表单提交有多种场景,编辑器初始化有新增文章和编辑
- 计算机的主要用途包括哪些
- Tiger LeapV1.0打包发布,里面包含了mmsplayer,wzplayer,tlplayer各个平台的播放器用例.包括部分source code