• MVC模式


    M----model模型-----------存储数据(javabean对象,存储数据)

    V-----view视图-------------提供数据显示(jsp页面,数据显示,主要使用html标记和javabean标记显示)

    C----controller控制器----业务逻辑,让模型与视图交互,根据视图的要求处理数据,模型中数据变化时更新显示视图Servlet对象,根据视图提交的要求进行数据处理操作,并将有关的结果存储到JavaBean中,然后Servlet使用重定向方式请求视图中的某个JSP页面更新显示。)


    使用MVC的目的?

    1. 将人机交互(M)从核心功能中分离
    2. 模型对用户透明,用户只需观察视图(v)
    3. 用户与模型的交互通过控制器(c)提供的安全方法实现

    MVC应用领域?

    1. 灵活的人机交互(灵活选择信息显示方式,灵活选择信息输入方式)
    2. 针对不同用户提供不同界面(不同用户权限不同,操作方式也不同)

    jsp的MVC中Servlet负责创建Javabean,将数据存储在javabean中,然后Servlet请求jsp使用Javabean的getProperty标记:

    <jsp:getProperty  name= "名字"  property="bean的属性"/> 

    jsp的MVC中Servlet创建的javabean也涉及到生命周期,生命周期分为request、session、application

    (以下设类名为BeanClass,包名为user.yourbean)

    • requset周期的javabean

    创建javabean

    BeanClass bean = new BeanClass();
    request.setAttribute("keyword",bean);

    视图更新

    servlet请求一个jsp页面:

    RequestDispather dispather = request.getRequestDispather("show.jsp");
    dispather.forward(reuest,response);

    jsp页面使用如下标记获得servlet所创建的Javabean的引用:

    <jsp:useBean id="keyWord" type="flower.grass.CreateJavaBeanClass" scope="request"/>

    jsp页面使用如下标记显示bean中的数据

    <jsp:getProperty name="keyWord" Property="bean的变量"/>
    • session周期的javabean

    创建javabean

    BeanClass bean = new BeanClass();
    HttpSession session = request.getSession(true);
    session.setAttribute("keyword",bean);

    在web服务目录中任何jsp中都可以使用如下标记获得Servlet创建的bean的引用

    <jsp:useBean id="keyWord" type="flower.grass.CreateJavaBeanClass" scope="session"/>
    <jsp:getProperty name="keyWord" Property="bean的变量"/>
    • application周期的javabean

    创建javabean

    BeanClass bean = new BeanClass();
    getServletContext().setAttribute("keyword",bean);

    在web服务目录中任何jsp中都可以使用如下标记获得Servlet创建的bean的引用

    <jsp:useBean id="keyWord" type="flower.grass.CreateJavaBeanClass" scope="application"/>
    <jsp:getProperty name="keyWord" Property="bean的变量"/>

     一个例子

     

     (i am so tired.)

  • 相关阅读:
    网络中常用的各种协议(针对TCP/IP协议组)
    报错注入小技巧
    2017swpu-ctf总结
    2017EIS高校运维大赛ctf wirteup
    discuz 3.x ssrf分析
    ssrf漏洞分析
    xxe漏洞分析
    phpcms9.6 注入分析
    74cms漏洞分析
    关于npm
  • 原文地址:https://www.cnblogs.com/zhanjiahui/p/10901237.html
Copyright © 2020-2023  润新知