Structs

编辑:综合网互动百科 时间:2019-11-13 22:58:06
编辑 锁定
本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!
Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用程序的开放源码的framework。发表于2000年5月。
中文名
Struts
外文名
Struts
采    用
JavaServer Pages技术
发表时间
2000年5月
包    括
Struts1和Struts2

Structs概述

编辑
采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架,用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。。目前为止,有Struts1和Struts2,用户可以根据自己的需求进行选择。

Structs主要功能

编辑
1. 包含一个controller servlet,能将用户的请求发送到相应的Action对象。
  2. JSP自由tag库,并且在controller servlet中提供关联支持,帮助开发员创建交互式表单应用。
  3. 提供了一系列实用对象:XML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提示和消息。

StructsMVC模式

编辑
MVC(Model/View/Controller)模式是国外用得比较多的一种设计模式,好象最早是在Smaltalk中出现。MVC包括三类对象。Model是应用对象,View是它在屏幕上的表示,Controller定义用户界面对用户输入的响应方式。

Structs发展概况

编辑
经过六年多的发展,Struts1已经成为了一个高度成熟的框架,不管是稳定性还是可靠性都得到了广泛的证明。市场占有率超过20%,拥有丰富的开发人群,几乎已经成为了事实上的工业标准。但是随着时间的流逝,技术的进步,Struts1的局限性也越来越多地暴露出来,并且制约了Struts1的继续发展。对于Struts1框架而言,由于与JSP/Servlet耦合非常紧密,因而导致了一些严重的问题。首先,Struts1支持的表现层技术单一。由于Struts1出现的年代比较早,那个时候没有FreeMarker、Velocity等技术,因此它不可能与这些视图层的模版技术进行整合。其次,Struts1与Servlet API的严重耦合,使应用难于测试。最后,Struts1代码严重依赖于Struts1 API,属于侵入性框架。从现在的技术层面上看,出现了许多与Struts1竞争的视图层框架,比如JSF、Tapestry和Spring MVC等。这些框架由于出现的年代比较近,应用了最新的设计理念,同时也从Struts1中吸取了经验,克服了很多不足。这些框架的出现也促进了Struts的发展。现在,Struts已经分化成了两个框架:第一个是在传统的Struts1的基础上,融合了另外的一个优秀的Web框架WebWork的Struts2。Struts2虽然是在Struts1的基础上发展起来的,但是实质上是以WebWork为核心的。Struts2为传统的Struts1注入了WebWork的先进的设计理念,统一了Struts1和WebWork两个框架。Struts1分化出来的另外一个框架是Shale。这个框架远远超出了Struts1原有的设计思想,与原有的Struts1关联很少,使用了全新的设计思想。Shale更像一个新的框架而不是Struts1的升级。

Structs核心包

编辑
commons-fileupload-1.2.1.jar
  commons-io-1.3.2.jar
  freemarker-2.3.16.jar
  javassist-3.7.ga.jar
  ognl-3.0.jar
  struts2-core-2.2.1.jar
  xwork-core-2.2.1.jar
词条标签:
软件 计算机学 科技产品 其他文化 互联网产品 互联网 书籍