Struts的概念及体系结构与工作原理

基本概念

Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。Structs 框架的核心是一个弹性的控制层,基于如 Java Servlets,JavaBeans,ResourceBundles与XML等标准技术,以及 Jakarta Commons 的一些类库。Struts有一组相互协作的类(组件)、Serlvet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型。

Struts有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。在模型层,Struts可以很容易的与数据访问技术相结合,如 JDBC / EJB ,以及其它第三方类库,如 Hibernate / iBATIS ,或者 Object Relational Bridge(对象关系桥)。在视图层,Struts能够与JSP,包括 JSTL 与 JSF,以及 Velocity 模板,XSLT 与其它表示层技术。

Struts 为每个专业的 Web 应用程序做背后的支撑,帮助为你的应用创建一个扩展的开发环境。

Struts的体系结构与工作原理

MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。MVC的工作原理,如下图1所示:

图1

Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。Struts的体系结构与工作原理如下图2所示:

图2

从图2中我们可以知道,Struts的体系结构包括模型(Model),视图(View)和控制器(Controller)三部分。

时间: 2024-10-20 23:02:56

Struts的概念及体系结构与工作原理的相关文章

Structs深入研究(一)-----Struts framework的工作原理和组件

Struts framework的工作原理和组件 对于Struts 如何控制.处理客户请求,让我们通过对struts的四个核心组件介绍来具体说明.这几个组件就是:ActionServlet.Action Classes,Action Mapping(此处包括ActionForward),ActionFrom Bean. Struts ActionServlet控制器对象        ActionServlet继承自javax.servlet.http.HttpServlet类,其在Struts

Heartbeat 3.x的概念组成及工作原理

一.Heartbeat的概念组成以及工作原理 1. heartbeat的概念 Heartbeat是Linux-HA项目中的一个组件,也是目前开源HA项目中最成功的一个例子, Linux-HA的全称是High-Availability Linux,这个开源项目的目标是:通过社区开发者的共同努力,提供一个增强linux可靠性(reliability).可用性(availability)和可服务性(serviceability)(RAS)的群集解决方案. Heartbeat提供了所有 HA 软件所需要

Struts的工作原理(附图)

Strtus工作原理                                                                                                          Made By Zhangxu                                                                                                                08.4.27

Java规则引擎工作原理及其应用

摘 要 Java规则引擎是一种嵌入在Java程序中的组件,它的任务是把当前提交给引擎的Java数据对象与加载在引擎中的业务规则进行测试和比对,激活那些符合当前数据状态下的业务规则,根据业务规则中声明的执行逻辑,触发应用程序中对应的操作. 引言 目前,Java社区推动并发展了一种引人注目的新技术--Java规则引擎(Rule Engine).利用它就可以在应用系统中分离商业决策者的商业决策逻辑和应用开发者的技术决策,并把这些商业决策放在中心数据库或其他统一的地方,让它们能在运行时可以动态地管理和修

SSH三大框架的工作原理及流程

Hibernate工作原理及为什么要用? 原理: 1.通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件 2.由hibernate.cfg.xml中的读取并解析映射信息 3.通过config.buildSessionFactory();//创建SessionFactory 4.sessionFactory.openSession();//打开Sesssion 5.session.beginTransaction();//创建事务Tra

Ajax工作原理

在这篇文章中,我将从10个方面来对AJAX技术进行系统的讲解.  1.ajax技术的背景        不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax的流行.而这也让微软感到无比的尴尬,因为早在97年,微软便已经发明了ajax中的关键技术,并且在99年IE5推出之时,它便开始支持XmlHttpRequest对象,并且微软之前已经开始在它的一些产品中应用ajax,比如说

GMPLS工作原理

目前,电信企业正在寻求将IP和光纤网络进行融合的技术,以便开发出高效率的先进业务.首先需要克服的是,被设计用于支持语音和固定电路多层体系结构的IP业务所带来的高度复杂性,最终的结果是需要得到一个从Layer 3的IP扩展到Layer 1的光传输层次的控制平面. GMPLS(通用多协议标记交换)技术的目标就是迎合这一需求,在一个统一的控制平面之下,从网络的边缘设备到核心设备,并再回到边缘来扩展网络的智能化. 作为建议中的一个IETF标准,GMPLS仍处在开发之中,而且据估计,在一两年之内不太可能会

JavaScript的计时器的工作原理

最近都在看一些JavaScript原理层面的文章,恰巧看到了jQuery的作者的一篇关于JavaScript计时器原理的解析,于是诚惶诚恐地决定把原文翻译成中文,一来是为了和大家分享,二来是为了加深自己对于JavaScript的理解.原文链接:http://ejohn.org/blog/how-javascript-timers-work/ 原文翻译: 从基础层面来讲,理解JavaScript计时器的工作原理是很重要的.由于JavaScript是单线程的,所以很多时候计时器并不是表现得和我们的直

由PHP底层工作原理说起

之前做过.netjava开发也写过几个Php的网站似乎3种主要编程语言都接触了.但是越来越觉得自己对编程的整个流程缺乏一个整体的认识尤其是底层的机制.譬如网络编程编译原理服务器端数据库存储引擎原理等.于是看了一些书比较经典的有apue,unp,tcp/ip,nginx,mysql的innodb存储引擎深入理解jvm.渐渐发现无论用什么语言做开发背后都有linux,shell,c/c++,nginx服务器mysql的身影.也许只有掌握了这些核心的原理知识一个程序员才具有核心竞争力. BAT的后端部