现在的位置: 主页 > 公司荣誉 > 文章列表

WebMVC框架 之 Struts

作者:北京东方雨泽科技有限公司 来源:www.dfyz6789.com 发布时间:2017-09-12 15:49:13
 

WebMVC框架 之 Struts

在上一篇博客中我们介绍了WebMVC框架主要实现的功能,它为我们提供了基础性服务,使我们在基于MVC模式的开发上变得简单灵活、可配置。本篇文章将主要介绍WebMVC框架中的Struts主要的内容。

开发流程

基于Struts的基本开发流程如下图所示:

hspace=40

在web.xml中配置好ActionServlet所拦截的请求,Struts提供的ActionServlet作为前端控制器,将会对客户端请求进行处理,其处理的主要内容还是和上一篇博客中介绍到的内容相同:如图中所示,ActionServlet主要是读取struts-config.xml中的配置信息截取URL地址、转换表单数据类型、封装表单数据、分发请求到Action(业务控制器)、获取转向信息进行转向……

可以看出Struts主要是对MVC中的C进行了增强,使我们不必过多的去关心具体转向的逻辑判断功能等。

主要内容

Struts的主要功能总结如下图所示:

height=438

上图中,列出了Struts为开发人员提供的主要功能服务,其中Controller部分是主要内容,涵盖了基于Struts的开发流程中需要掌握的内容。

核心对象里:

ActionServlet、Action作为控制器前面已经重点提过;

ActionForward封装转向信息,也是在执行完Action内的方法需要给ActionServlet返回的对象

ActionMapping封装的信息,其实是针对struts-config.xml中的配置来说的,提供了对前面几个对象的运行时支持,也就是说在服务启动时,将配置信息已经封装到了ActionMapping中,程序运行过程中,主要是从中获取相关配置,进而执行操作。

除以上核心对象外,ActionForm对象也是Struts的一大特点,它主要封装表单提交数据,ActionServlet在接收到浏览器请求后,调用注册好的类型转换器将请求中的表单数据进行类型转换,然后封装到具体的ActionForm中,进而解决了手动转换表单数据的繁琐问题。

不得不提的是,为了减少配置量、代码量以及应对灵活处理的要求,Struts对ActionForm、ActionForward都提供了动态创建的机制,ActionForm不是必须要写的,如果有必要,可以采用配置的方式动态创建。ActionForward也可以在程序内部动态创建,灵活应对转向页面的不同需求。

另外,在减少配置、减少代码量方面,Struts根据约定优于配置的思想,也提供了模式匹配以及使用DispathAction减少Action个数的功能

国际化方面,Struts基于java的国际化处理(Locale、ResourceBundle等)进行了进一步的封装。首先国际化资源文件由BaseName+Locale.property命名存储,ActionMessage进行存储传递,页面JSP上,采用Struts提供的标签很方便的读取。其余Struts的异常处理结合比较紧密。

总结

通过Struts的学习、实践,掌握了基于MVC的开发流程,也明白了一个WebMVC框架大致提供的功能,这也为后面其他相类似框架的使用提供了大概的方向。

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:鄂州网站制作 http://ezhou.666rj.com

  • 上一篇:EM算法逼近GMM参数针对二维数据点的python实现
  • 下一篇:最后一页
  •