struts的框架介绍 Struts2框架的大致处理流程

发布时间:   来源:CSDN  

1struts的框架介绍 struts2由struts1和webwork结合而来,更准确的的说是在struts1 的基础上按照webwork的设计理念发展起来的,实际上学过webwork的人更加容易平滑的过度到轻松的使用struts2,struts2与struts1实际上已经有很大的不。

1.1  struts2框架结构

下图为struts2的体系概图。


【资料图】

Struts2框架的大致处理流程如下:

>浏览器发送请求,例如:http://localhost/struts2/helloworld.jsp或者http://localhost/struts2/helloworld.action或者http://localhost/struts2/helloworld.pdf等

>struts2的核心控制器FilterDispatcher根据请求决定调用用合适的Action。

>拦截器链自动对请求应用,例如验证用户是否是登陆状态啊,validation,文件上传等操作。

>调用action的的execute的方法,execute方法会先获取用户的发过来的请求参数,然后执行某种数据库操作,可以是对对数据库中检索信息,可以是将数据保存到数据库中。实际上。这些操作都是由action调用对应的业务逻辑组件来完成的,action实际上只是一个控制器来调度业务逻辑组件来处理用户的请求。

>action的execute方法会将最终处理的结果信息输出到浏览器中,这些数据可以是HTML页面,图像,pdf和其他文档。Struts2支持的视图技术非常多支持Jsp,支持Velocity,FreeMarker等模板技术。

1.2 struts2的控制器组件

Struts2的控制器组件是struts2框架的核心,struts2的控制器组件由FilterDispatcher和业务控制器Action组成。核心控制器根据用户请求决定调用哪个Action,用户定义的业务控制器Action来处理用户的请求。总结起来,Action类有如下优势:

》action类完全是也一个pojo,完全不需要继承任何类或实现任何接口就可以被struts框架所有,因此具有很好的代码复用性。

》action类无需与servlet API耦合,因此进行单元测试非常简单,软件也更好的实现了分层。

》action类的execute方法仅返回一个字符串作为处理结果可以映射到任何的视图资源,甚至是另一个action。

1.3  struts2的配置文件

struts的配置文件有配置Action的struts.xml文件和配置struts2全局属性的struts.properties文件。

》struts2.xml文件内定义了struts2的系列action,action的name属性指定请求来自哪个jsp等页面,其class属性定义了处理对应请求的action实现类,其子元素result则定义了action实现类的处理结果与视图资源之间的映射关系。

》struts2配置struts2.xml文件全局属性的的struts.properties文件示例如下:

struts.customer.i18n.resources= myi18n

这里定义了struts在哪里找到国际化资源文件啊。

1.4  struts的标签库

struts的标签库的标签库是struts2的重要组成部分,不仅提供了表现层的表单,数据处理功能,还提供了对表单的校验,基本的流程控制,国际化,支持ajax的功能,使用struts的标签库,可以大限度的减少页面代码的书写。

相关文章Related

返回栏目>>