Structs是典型的MVC框架实现

来源:http://blog.csdn.net/baby_newstar/article/details/6753414

Structs是典型的MVC框架实现,它以JSP和Servlet作为实现的一部分。Structs的MVC的框架如下

Structs是典型的MVC框架实现_第1张图片

视图(View):展示逻辑,主要就是页面展示,可以理解为展示层

模型(Model):模型一般以一个或多个JavaBean的形式存在,可以理解为应用层。

控制(Controller):主要是servlet,另外还应包括相应的配置文件,如在structs中的structs-config.xml。可以理解为控制层。

对于整个框架来说一般只有一个Controller用于整体业务的控制,而对应于不同业务逻辑有多个模型对其进行处理,每个模型其实就相当于一个功能模块。另外View也可以有多个。

 

 

View比较容易理解,这里就还不详述了。下面就Structs中的Model和Controller进行详细阐述:

1、Model

Struts中的模型也主要是以Bean的形式存在。主要分为三类:FormBean、ActionBean和一般的JavaBean 或EJB。

  • FormBean封装客户端的用户请求信息,如表单信息,主要表现在ActionForm的子类。该模型主要用于是表单信息的提交。
  • ActionBean是获取从ActionServlet传来的信息,其实就是获取FormBean中的信息,并对其作相应处理。该模型主要是用于任务的分发,所以需要调用处理具体任务的JavaBean或EJB进行处理。
  • JavaBean或EJB被ActionBean调用处理具体的任务。相当于任务功能处理模块。

2、Controller

在Struts中承担Controller作用是Servlet(ActionServlet),它提供以下功能

  • 提供发送到Struts的Http请求的处理入口。
  • 截取和分发请求到相应的Bean。在Struts架构中其实是将请求分发给业务逻辑(Action的子类),再由业务逻辑发送给相应的JavaBean去处理。
  • 将相应的请求参数填充ActionForm(FormBean),并传送给动作类(ActionBean)。
  • 将控制权传给后续的JSP,生成视图。(forward)

控制逻辑是通过配置文件struts-config.xml进行配置,具体的配置在前面博文《Struts配置详解》中有说明。

你可能感兴趣的:(Structs是典型的MVC框架实现)