您的位置:首页 > 编程语言 > Java开发

JavaWeb工作原理

2016-09-22 21:20 225 查看

一、HTTP协议的理解 ———–

什么是HTTP协议

HTTP是一种超本文传输协议,是一套计算机在网络中通信的规则。他是一种无状态的传输方式——在web浏览器(客户端)和web服务器之间不需要建立持久的链接。属于应用层协议。

HTTP协议的格式

HTTP的请求:

请求行(HTTP方法、请求的URL、HTTP版本)、

请求头(Host、User-Agent、Aeecpt)、

空行、消息体


HTTP的响应:

响应行(HTTP版本、响应码、响应描述)、

响应头(Content-Type、Date)、

空行、消息体


HTTP的请求中GET和POST的异同

GET没有消息体,POST有消息体。GET的查询语句直接出现在请求头URL后面。POST的查询语句出现在消息体中。

响应码的描述

1××:信息,请求收到,继续处理中。

2××:成功。行为被成功地接受、理解和采纳。

3××:重定向。为了完成请求,必须进一步执行动作。

4××:客户端错误。请求包含语法错误或者请求无法实现。

5××:服务器错误。服务器不能实现一种明显无效的请求。

http定义的事物处理由以下四步组成:

客户端和web服务器建立连接

客户端发送http请求

服务器端接受客户端的http请求,生成http响应回发。

服务器端关闭连接。客户端解析挥发响应,恢复页面。

http请求方法

GET:用于向服务器检索资源

POST:用于向服务器发送数据,并要求指定URL处理

HEAD:与GET方法相同,服务器只返回状态行和头标,并返回请求文档

PUT:请求服务器保存请求数据作为指定URL新内容

DELETE:请求服务器删除URL中命名的资源

OPTIONS:请求关于服务器支持的请求方法信息

TRACE:请求WEB服务器反馈http请求和其头标

CONNECT:以文档化但当前未实现的一个方法,预留做隧道处理。

二、Javaweb工作的原理

什么是javaweb?(javaweb是Web前端?)

javaweb是java开发中的一个方向 java有搞安卓的,搞web的,搞嵌入式的,等等。。javaweb就是指搞web方向的,javaweb分两块一块是服务器端 叫后端,另一块叫前端,也就是web前端。前端就是用户能看到的部分,比如淘宝网,qq空间,网页上你能看到的都是web前端做的。后端做的就是为前端的展示业务逻辑功能做处理。(

当web浏览器向服务器通过HTTP发送请求时,web服务器只能处理静态的页面。于是我们在web服务器中加入辅助应用实现对动态页面的请求。在web服务器创建动态服务器端内容的过程,我们称之为服务器端网页编程。传统的解决方法是CGI、ASP和ASP.NET、Servlet/jsp。

javaWeb应用程序的组成

配置文件

静态文件和JSP

类文件和包

CGI,即通用网关接口。一个CGI程序处理包括连接数据库、封装请求响应对象、向客户端发送请求等多个任务。而且CGI是基于进程的程序,每当有请求来到时都要开启一个新的进程,这样大大浪费了资源,并发性问题解决性差。

Servlet/jsp是Java服务器端网页编程的解决模式。其在web服务器中存在一个web容器,在web容器中存在Servlet。其中Web容器用于封装请求响应对象,处理多线程,管理servlet生命周期,处理客户端socket,安全机制等内容。而servlet是一个在web容器中运行的Java程序,主要用来在服务器端产生动态内容。Servlet没有main方法,不属于J2EE有自己独立的规范。他读取客户端发送来的数据,根据这些数据生成结果并返回给web容器。

Tomcat的介绍及web应用程序的部署

1.Tomcat是款常用的web服务器及web容器:

bin:启动和关闭服务器的脚本文件。

common:服务器及所有应有程序都能用的类文件以及一个jar。

conf:存放配置文件如web.xml

webapps:应用程序部署目录


2.一个正确的web应用程序的结构:

必须有一个WEB-INF文件夹(此文件夹下的内容全部对用户隐藏,文件名必须大写,否则出现404错误),在WEB-INF下有一个classes文件夹用来存放编译好后的.class文件,存在一个lib文件夹用来存放应用程序所需要的jar,存在一个配置文件web.xml(文件名必须小写,否则出现404错误)。此外,applet程序放在WEB-INF以外。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java web http协议