文档介绍:Struts 的原理和优点. Struts 工作原理 MVC 即 Model-View-Controller 的缩写,是一种常用的设计模式。 MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。 MVC 的工作原理, 如下图 1 所示: Struts 是 MVC 的一种实现, 它将 Servlet 和 JSP 标记( 属于 J2EE 规范) 用作实现的一部分。 Struts 继承了 MVC 的各项特性, 并根据 J2EE 的特点, 做了相应的变化与扩展。 Struts 的工作原理, 视图: 主要由 JSP 生成页面完成视图, Struts 提供丰富的 JSP 标签库: Html , Bean , Logic , Template 等,这有利于分开表现逻辑和程序逻辑。控制:在 Struts 中,承担 MVC 中 Controller 角色的是一个 Servlet ,叫 ActionServlet 。 ActionServlet 是一个通用的控制组件。这个控制组件提供了处理所有发送到 Struts 的 HTTP 请求的入口点。它截取和分发这些请求到相应的动作类( 这些动作类都是 Action 类的子类)。另外控制组件也负责用相应的请求参数填充 Action From (通常称之为 FromBean ), 并传给动作类(通常称之为 ActionBean )。动作类实现核心商业逻辑,它可以访问 java bean 或调用 EJB 。最后动作类把控制权传给后续的 JSP 文件,后者生成视图。所有这些控制逻辑利用 Struts- 文件来配置。模型: 模型以一个或多个 java bea n 的形式存在。这些 bea n 分为三类: Action Form 、 Action 、 JavaBean or EJB 。 Action Form 通常称之为 FormBean ,封装了来自于 Client 的用户请求信息, 如表单信息。 Action 通常称之为 ActionBean ,获取从 ActionSevlet 传来的 FormBean ,取出 FormBean 中的相关信息,并做出相关的处理,一般是调用 Java Bean 或 EJB 等。流程:在 Struts 中,用户的请求一般以*.do 作为请求服务名,所有的*.do 请求均被指向 ActionSevlet , ActionSevlet 根据 Struts- 中的配置信息, 将用户请求封装成一个指定名称的 FormBean , 并将此 FormBean 传至指定名称的 ActionBean ,由 ActionBean 完成相应的业务操作,如文件操作,数据库操作等。每一个*.do 均有对应的 FormBean 名称和 ActionBea n 名称,这些在 Struts- 中配置。核心: Struts 的核心是 ActionSevlet , ActionSevlet 的核心是 Struts- 。 Struts 优缺点优点: 1. 开源软件,能更深入的了解其内部实现机制。 标记库,灵活动用,能大大提高开发效率。 3. 页面导航使系统的脉络更加清晰。通过一个配置文件, 即可把握整个系统各部分之间的联系,