Java Web表示层技术:java web工作原理

来源:互联网 发布:电脑性能测试软件 编辑:程序博客网 时间:2024/06/06 18:44
1、java web工作原理:
        Http协议时无状态的。
        发送请求消息:
        一旦建立了TCP连接,web浏览器就会向web服务器发送请求命令,Http协议将来自于客户端的请求信息封装成Http请求,它包括请求行、请求头以及消息体和分割请求头和和消息体的一个空行。
          请求行:
            请求行是一个ASCII文本行,由3个标记组成:请求的HTTP方法,请求的URL,HTTP版本,中间用空额分开。
          请求头:
            HTTP协议是用HTTP头来传递请求的元信息。HTTP头是用冒号分隔的值对,冒号前是HTTP头的名称,后面是HTTP头的值。
          空行:
            发送回车符和退行,通知服务器以下不再有请求头。
          消息体:
            HTTP请求中带有查询字符串时,如果是get方法,查询字符串或表单数据,附加在请求行中,那么消息体中就没有内容;如果是post方法,查询字符串或表单数据就添加在消息体中。
        回送响应信息:
          HTTP响应包括:状态行、响应头、消息体以及分割消息体和响应头的一个空行
          状态行:
            每个HTTP响应以一个状态行开头,状态行由HTTP协议版本,响应状态码和响应描述组成。
          响应头:
            响应头与请求头一样。
          消息体:
            要发送回客户端的HTML文档或其他要显示的内容等。web服务器把要发送回客户端的文档信息放到消息体中。


        web服务器的缺陷:
          它只能向客户端提供静态网页的内容。


        最早的解决方案CGI:
          CGI,即通用网关接口(common Gateway Interface)它是基于进程的。


        JAVA的解决方案:
          JSP:java服务器端界面技术。
          Servlet:
            Servlet是一个在WEB服务器端或者应用服务器端运行的java程序,主要用于子啊服务器端产生动态内容。
          WEB容器:
            容器对Servlet的支持包括:通信支持,生命周期管理,多线程支持,JSP支持,处理安全性。
            WEB容器主要用于给处于容器中的应用程序组件(Servlet,JSP)提供一个环境,使Servlet、JSP直接跟容器中的环境变量交互,这样我们就可以把注意力放在处理用Servlet实现业务逻辑上,不必关注其他。
          Servlet和web容器配合处理请求和响应:
            1、客户端向服务器发送一个HTTP请求;
            2、HTTP请求被服务器接收,如果请求的是静态页面由web服务器进行处理,如果是java web组件(Servlet,JSP)则移交给WEB容器,WEB容器可以在同一个进程,不同的进程或其他的WEB服务主机的进程中启动。
            3、WEB容器根据Servlet的配置文件,确定调用的具体的Servlet类,并把request和response对象传给它。
            4、Servlet根据request对象知道客户端的使用者是谁,客户的请求信息和其他的信息,Servlet处理完后,把要返回的信息放入response对象返回到客户端。
            5、一旦Servlet完成了请求处理,WEB容器就会刷新request,把控制权返回给WEB服务器。


        JAVA WEB应用程序的组成:
          配置文件,静态文件和JSP,类文件和包。
          每一个WEB应用都必须有WEB-INF目录,web.xml文件、classes目录。
0 0