• 阅读笔记—MVC


    MVC设计模式

    Model 1 体系结构

    在Model 1 体系结构中,每一个请求的目标都是JSP页面。JSP页面负责完成请求所需要的而所有任务,其中包括验证客户、使用JavaBeans访问数据库及管理用户状态等。最后响应结果也通过JSP页面发送给客户。

    在该结构中没有一个核心组件控制应用程序的工作流程,所有业务处理都是用JavaBeans实现。该结构具有明显的缺点:

    1. 他需要将实现业务逻辑的大量Java代码嵌入到JSP页面,这对不熟悉服务器端编程的Web页面设计人员来说将十分困难。
    2. 这种方法并不具有代码可重用性。

    Mode 2 体系结构

    Model 2 体系结构又称MVC设计模式。在这种结构中,将Web组件分为模型(Model)、视图(View)和控制器(Controller),每种组件完成各自的任务。

    在这种体系结构中,所有请求的目标都通过Servlet或过滤器(Filter),它充当应用程序的控制器。Servlet分析请求并将响应所需要的数据收集到Action对象或JavaBeans对象中,该对象作为应用程序的模型。最后Servlet控制器将请求转发到JSP页面。这些页面使用存储在JavaBeans中的数据产生响应。JSP页面构成了应用程序的视图。

    优点:将业务逻辑和数据访问从表示层分离出来。控制器提供了应用程序的单一入口点,它提供了较为清晰的实现安全性和状态管理的方法,并且这些组件可以根据需要实现重用。然后,根据客户的请求,控制器将请求转发给合适的表示组件,由该组件来响应客户。这使得Web页面开发人员值关注数据的表示,因为JSP页面不需要任何复杂的业务逻辑。

    实现MVC设计模式的一般步骤

      1. 定义JavaBeans存储数据
        在Web应用中通常使用JavaBeans对象或实体类存放数据,从JSP页面作用域中取出数据。因此,首先应根据应用处理的实体设计合适的JavaBeans。
      2. 使用Servlet处理用户请求。
        在MVC设计模式中,Servlet充当控制器功能,它从请求中读取请求信息、创建JavaBeans对象、执行业务逻辑,最后将请求转发到视图组件。Servlet通常不直接向客户输出数据。
      3. 结果的存储
        创建了与请求有关的数据并将数据存储到JavaBeans对象中后,接下来应该将这些对象存储在JSP页面能够访问的地方。
      4. 将请求转发到JSP页面
        再是用请求作用域共享数据的时候,应该使用RequestDispatcher对象的forward()方法将请求转发到JSP页面。在使用会话作用域共享数据的时候,使用响应对象的sendRedirect()方法重定向可能更合适。
      5. 从JavaBeans或其他作用域对象中提取数据。
        请求到达JSP页面之后,使用JSP动作指令提取JavaBeans数据,也可以使用表达式语言提取数据。
  • 相关阅读:
    python类的继承
    Numpy float64和Python float是一样的
    ndarray的用法总结
    pandas的Panel类型dtype
    C++中类的前向声明
    numpy的searchsorted细品
    发现Boost官方文档的一处错误(numpy的ndarray)
    C++读取dll文件所在目录
    64位的pyd报"ImportError: No module named"错误
    WIN32,_WIN32_WIN64
  • 原文地址:https://www.cnblogs.com/maosonglin/p/6390930.html
Copyright © 2020-2023  润新知