zoukankan      html  css  js  c++  java
  • 1. Web应用程序简介

    关于HTML

    Web应用程序,是由客户端和服务器端两个部分组成的。客户端时浏览器,服务器端是HTTP服务器。服务器上的文件或资源必须产生HTML。

    关于HTTP

    HTTP——架构在TCP/IP之上应用层的一种协议。

    两个基本特性:

    • 基于请求/响应模型
    • 无状态

    客户端队服务器发出一个取得资源的请求,服务器将要求的资源响应给客户端,每次联机只作一次请求/响应。没有请求就不会有响应。

    服务器响应客户端之后,就不会记得客户端的信息,更不会去维护与客户端有关的状态。

    GET和POST

    HTTP所有通信数据都是使用“字符”来进行协议交换。

    GET

    用于等幂操作。纯粹请求服务器上的资源,而不改变服务器上的数据或状态。

    POST

    用于非等幂操作。POST发送的请求,可能会影响服务器上的数据或状态。

    URL编码

    百分比编码=%+16进制

    保留字符

    • :
    • /
    • ?
    • &
    • =
    • @
    • %

    中文字符

    如果是 UTF-8 编码,会用3个十六进制表示

    "林" ——> utf-8 为%E6%9E%97

    Java API

    编码 java.net.URLEncoder.encode(char, char_set)

    解码 java.net.URLEncoder.decode(char, char_set)

    容器

    浏览器 ——> 实体服务器 <——> HTTP服务器程序 <——> Web容器 <——> Servlet

    一个请求/响应的例子:

    1. 客户端对 Web 服务器发出 HTTP 请求
    2. HTTP 服务器收到 HTTP 请求,将请求转由 Web 容器处理, Web 容器会剖析 HTTP 请求内容,创建各种对象(如 HttpServletRequest、HttpServletResponse、HttpSession 等)。
    3. Web 容器由请求的 URL 决定要使用哪个 Servlet 来处理请求(事先有开发人员定义好)。
    4. Servlet 根据请求对象(HttpServletRequest)的信息决定如何处理,通过响应对象(HttpServletResponse)来创建响应。
    5. Web 容器与 HTTP 服务器沟通,Web 服务器将响应转换为 HTTP 响应并传回客户端。

    对于每个请求,容器是创建一个线程并转发给适当的 Servlet 来处理,因此可以大幅减轻性能上的负担,但也因此要注意线程安全问题。

    JSP 和 Servlet 的关系

    JSP 最终会被容器转译为 Servlet 并加载执行。

    JSP 与 Servlet 是一体两面的关系。

    MVC 与 Mode2

    MVC

    • 模型不会有画面相关对程序代码
    • 视图负责画面相关逻辑
    • 控制器知道某个操作必须调用哪个模型

    Mode 2

    由于 Web 应用是基于 HTTP,必须基于请求/响应模型,没有请求就不会有响应,也就是 HTTP 服务器不可能主动对浏览器发出响应,因此形成了 Mode 2 架构。

    • 控制器:取得请求参数、验证请求参数、转发请求给模型、转发请求给画面
    • 模型:接受控制器的请求调用,负责处理业务逻辑、负责数据存取逻辑等
    • 视图:接受控制器的请求调用,会从模型提取运算后的结果,根据需求呈现所需的画面
  • 相关阅读:
    由类型名得到该类型
    TypeName of CA1505 is AvoidUnmaintainableCode, not AvoidUnmantainableCode.
    多核
    SSRS throws "The operation has timed out."
    XmlRootAttribute与XmlTypeAttribute
    littleendian and bigendian
    Assembly Exp
    如何在Ubuntu 11.10下成功安装Java [转载]
    *uck up ~,纯发泄
    [转载]读书相关,,
  • 原文地址:https://www.cnblogs.com/okadanana/p/5931121.html
Copyright © 2011-2022 走看看