下一代手机趋势

上传人:pu****.1 文档编号:491552029 上传时间:2023-10-19 格式:DOCX 页数:7 大小:18.80KB
返回 下载 相关 举报
下一代手机趋势_第1页
第1页 / 共7页
下一代手机趋势_第2页
第2页 / 共7页
下一代手机趋势_第3页
第3页 / 共7页
下一代手机趋势_第4页
第4页 / 共7页
下一代手机趋势_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《下一代手机趋势》由会员分享,可在线阅读,更多相关《下一代手机趋势(7页珍藏版)》请在金锄头文库上搜索。

1、下一代手机趋势 Struts自推出以来不停受到开发者的追捧,其最新版本Struts 亦代表了下一代Java Web开发的新趋势。Struts 框架含有一系列丰富的特征,对大型开发小区很有帮助,而且,从Struts 1迁移到Struts 2也不是很困难。Apache Struts是一个很流行的Web框架,可用于使用Java企业版开发Web应用。Struts项目是负责开发及维护Struts框架的开源小区。Struts在2021年7月公布,现在已成为使用JEE开发Web应用的实际上的标准。而小区新近公布的Struts 更是一个精巧、可扩展的框架,可用于使用Java代码来开发企业就绪的Web应用。该框

2、架意在简化从构建、布署到日常维护的整个应用开发周期。设计Struts框架的目标是为了让开发人员能够构建一个数据库代码、页面设计代码和控制步骤代码不混合在一起的服务器小程序或JavaServer Pages。因为,要是代码混合在一起,伴随应用越来越庞大,就会变得难以维护。Struts框架基于MVC架构,能够帮助开发人员利用明确的关注点分离标准,开发动态Web应用。Struts框架提供了自己的Web控制器组件来处理控制步骤逻辑。至于视图,它集成了其它技术,譬如JavaServer Pages、Velocity模板引擎和XSLT。至于模型,它使用JDBC、 EJB、Hibernate或iBATIS等

3、技术来访问数据。Struts 很成熟,所以得到众多开发小区的有力支持,而且说明文档内容完备。不过在过去的几年里,很多开源小区的Web框架纷纷登台亮相,因此它需要跟上Web应用需求不停改变的形势,这就有必须构建下一代Struts框架。力争满足这个要求的初始提案是Struts Ti,这种简化的MVC Model 2框架可用于让需要更少配置、更加好结构和控制器特征的人开发Web应用。大家考虑用来实现这个目标的另一个框架是Apache Shale,不过,Shale是基于组件的一个框架,它立足于JSF。Shale开发小区不愿和Struts联合,决定继续把Shale作为一个顶级项目来开发。WebWork项

4、目由Open Symphony小区开启,面向Struts开发小区。它意在满足那些期望寻求类似Struts的一个框架,但有更加好特征的人的需要。WebWork框架于2021年公布。独立运作了几年后, WebWork和Struts两个小区在2021年12月联合起来,开发了新版本的Struts,即Struts 2。Struts 2实际上就是Struts 1和WebWork的结合体。Struts的这个新版本更易使用,更靠近Struts框架的最初版本。基于MVC架构的Struts 2如前所述,Struts框架基于MVC架构。Struts 2含有一个灵活的控制层,基于Java过滤器、JavaBean、 R

5、esourceBundle、Locale和XML等很多标准技术上,还基于OGNL和XWork等多种Open Symphony包。至于模型,该框架可和JDBC、EJB及其它框架等标准的数据访问技术相互联络。至于视图,该框架能够使用JavaServer Pages、Velocity模板、PDF、XSLT和FreeMarker。除了支持Action和结果外,Struts框架还提供对异常处理程序和拦截器的支持。异常处理程序申明用于定义全局异常和当地异常的异常处理程序。不需要在代码中编写try/catch块,这个框架其实简化了异常处理。框架捕捉每个异常后,会显示消息和异常方面对应细节的页面。拦截器指定了

6、动作的请求处理生命周期。拦截器还指定了在Action类实施前后出现的动作次序。如前所述,拦截器经配置后,能够把常见功效作用到请求上。该框架的大多数关键功效作为拦截器来实现。假如有些动作响应了Ajax、SOAP或JSF请求,生命周期就能得到简化,请求也只需经过拦截器传送,不需要任何实施。Struts 2请求处理步骤这个架构实际上又是怎样工作的呢?初始请求先发送到服务器小程序容器,然后经过一系列过滤器传送。假如和Site Mesh插件等其它技术集成,可选的ActionContextCleanUp过滤器就很有用,要是用到这个过滤器,请求先经过它传送。接着,调用请求的FilterDispatcher,

7、它使用ActionMapper来确定要不要为这个请求调用动作。假如ActionMapper确定应该调用Action,FilterDispatcher就把控制权委托给ActionProxy。ActionProxy使用了框架配置文件管理器,该管理器经过文件来初始化。然后,ActionProxy创立ActionInvocation,它负责实现命令模式。ActionInvocation进程调用所需的拦截器,然后调用Action。一旦该Action实施,ActionInvocation就负责查寻和中映射的Action结果代码相关的合理结果。然后结果被实施,大多数时候,这会显示用FreeMarker或Ve

8、locity编写的JSP或模板。根据相反次序完成Action以后,拦截器再次得到实施。最终,响应经过中配置的过滤器返回。假如ActionContextCleanUp过滤器经过配置,FilterDispatcher就不会清理ThreadLocal ActionContext。假如ActionContextCleanUp过滤器未经配置,FilterDispatcher就会清理全部的目前ThreadLocal。图1描述了Struts 2框架的架构。这一切似乎全部有点抽象。为了帮读者有更深入的了解,下面提供一个经典的架构请求步骤,图2显示了这个次序。1用户请求对Web应用实施某个动作后,Web浏览器将

9、要求一些资源的请求发送到Web服务器。2服务器小程序过滤器调度程序接到请求后,分析请求,然后确定调用对应的动作,提供资源。3在Action被实施之前,经配置后把部分常见功效作用到请求上的一组拦截器上,可自动作用到该请求上。4Action类的一个新实例被创立,然后实施动作方法,用于把信息存放到数据库,或从数据库获取信息。5结果显示输出不论输出的是HTML、图像、PDF还是其它某种格式。6然后,请求根据相反次序经过拦截器传送。返回的请求许可实施其它的处理或清理操作。7最终,容器把输出发送到浏览器。Struts 1和Struts 2的比较Struts 1和Struts 2有三个共同的基础概念: 请求

10、处理程序、响应处理程序和标签库。不过在Struts 2中,这些部分经过了重新设计,并得到了改善,方便开发。开发人员会注意到Struts 2框架中出现的很多改动。譬如说,过滤器替代了服务器小程序,对应改变在布署描述文件里会有所表现。一样,配置文件经过了全方面改动。还会注意到其它部分关键特征,譬如Action类方面的改变、支持注释、验证方面的改变。表1具体解释了这些改变。链接Struts 的新特征Struts 框架中出现的很多特征意在让Struts更轻易使用: 改善的设计: 和Struts 1相比,Struts 2的全部类全部基于接口,关键接口独立于HTTP。这些API并不依靠服务器小程序API。

11、 简化的Action: Struts 2 Action类独立于框架,是简化的一般Java对象。拥有execute方法的任何Java类全部能够用做Action类。 POJO表单: Struts 2不支持ActionForms特征。ActionForms中定义的属性能够直接放在Action类上。不需要使用全部的String属性。 智能默认值: Struts 2配置文件中的大多数配置元素全部会有默认值,因此不需要设定值,除非需要不一样的值。这有利于降低在XML文件中需要进行的配置。Struts 2支持注释,这带来了更大的方便。 改善的结果: 在Struts 2中。forward标签替代。不像 Act

12、ionForwards,Struts 2结果能够帮助准备响应,并提供构建多个输出类型的灵活性。 改善的标签: Struts 2标签不单单发送输出数据,还能提供样式表驱动标识,这么就能够用较少的代码构建一致性页面。Struts 2标签现在可和FreeMarker、Velocity及类似模板引擎配合使用。 引入拦截器: Struts 2为拦截器提供了全方面支持。拦截器可在Action类实施前后加以实施。拦截器经配置后,能够把工作步骤或验证等常见功效作用到请求上。全部请求经过一组拦截器传送,以后再发送到Action类。Action类被实施后,请求根据相反次序再次经过拦截器传送。 支持Ajax: 为了

13、创立使用Ajax的动态Web应用,Struts 2提供了Ajax专题,从而大大改善了交互应用。面向Ajax的Struts 2标签基于Dojo窗口组件。还有用于其它框架的插件。 快速开启: 布署配置文件能够重新装入; 因此,能够动态地进行很多改变,用不着重新开启Web容器。 状态复选框: Struts 2框架可自动跟踪复选框,假如缺乏了某复选框,就会采取默认值false。因此,不像在Struts 1中,复选框不需要对false值进行特殊处理。 易于测试: Struts 2 Actions独立于HTTP,因此和框架中立。无须使用模拟对象,就很轻易测试。 使用注释: 使用Struts 2开发的应用能够使用Java 5注释,作为XML和Java属性配置之外的一个替换措施。注释尽可能降低了对XML的需要。Action、拦截器、验证及类型转换方面全部有注释。 易于插入: 只要把插件JAR文件放到WEB-INFlib目录中,即可轻松安装Struts 2插件,不需要手动配置。 便于和Spring集成: Struts 2 Action能够感知Spring。只要为某个应用添加Spring beans,就能够添加对Spring的支持。 易于定制的控制器: Struts 1许可请求处理程序可根据模块来定制,在Struts 2中,需要的话,能够根据动作来定制请求处理。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 幼儿教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号