JavaWeb知识点总结一

常见的状态码以及其含义

一些常见HTTP状态码为:

-- 服务器成功返回网页

-- 服务器不理解请求的语法

-- 请求的网页不存在

-- 服务不可用

常见HTTP状态码大全

1xx(临时响应):表示临时响应并需要请求者继续执行操作的状态代码。

http状态码 100(继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。

http状态码 101(切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。

2xx (成功):表示成功处理了请求的状态代码。

http状态码 200(成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。
http状态码 201(已创建) 请求成功并且服务器创建了新的资源。
http状态码 202(已接受) 服务器已接受请求,但尚未处理。
http状态码 203(非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。
http状态码 204(无内容) 服务器成功处理了请求,但没有返回任何内容。
http状态码 205(重置内容) 服务器成功处理了请求,但没有返回任何内容。
http状态码 206(部分内容) 服务器成功处理了部分 GET 请求。

3xx (重定向):表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。
http状态码 300(多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择。
http状态码 301(永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。
http状态码 302(临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。
http状态码 303(查看其他位置) 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。
http状态码 304(未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。
http状态码 305(使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。
http状态码 307(临时重定向) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。

4xx(请求错误):这些状态代码表示请求可能出错,妨碍了服务器的处理。

http状态码 400(错误请求) 服务器不理解请求的语法。
http状态码 401(未授权) 请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。
http状态码 403(禁止) 服务器拒绝请求。
http状态码 404(未找到) 服务器找不到请求的网页。
http状态码 405(方法禁用) 禁用请求中指定的方法。
http状态码 406(不接受) 无法使用请求的内容特性响应请求的网页。
http状态码 407(需要代理授权) 此状态代码与 401(未授权)类似,但指定请求者应当授权使用代理。
http状态码 408(请求超时) 服务器等候请求时发生超时。
http状态码 409(冲突) 服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。
http状态码 410(已删除) 如果请求的资源已永久删除,服务器就会返回此响应。
http状态码 411(需要有效长度) 服务器不接受不含有效内容长度标头字段的请求。
http状态码 412(未满足前提条件) 服务器未满足请求者在请求中设置的其中一个前提条件。
http状态码 413(请求实体过大) 服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。
http状态码 414(请求的 URI 过长) 请求的 URI(通常为网址)过长,服务器无法处理。
http状态码 415(不支持的媒体类型) 请求的格式不受请求页面的支持。
http状态码 416(请求范围不符合要求) 如果页面无法提供请求的范围,则服务器会返回此状态代码。
http状态码 417(未满足期望值) 服务器未满足”期望”请求标头字段的要求。

5xx(服务器错误):这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错。

http状态码 500(服务器内部错误) 服务器遇到错误,无法完成请求。
http状态码 501(尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。
http状态码 502(错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。
http状态码 503(服务不可用) 服务器目前无法使用(由于超载或停机维护)。通常,这只是暂时状态。

http状态码 504(网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。
http状态码 505(HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。

请求协议的格式

  1. 请求方法 URI 协议/版本
  2. 请求头:包含了许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度等等。
  3. 请求正文:请求头和请求正文之间有一个空行,这个行非常重要,它表示请求头已经结束,接下来的是请求正文。

user_agent包含的信息

user_agent是HTTP协议中的一部分,属于头域中的组成部分,user_agent也简称为UA。用较为普通的话来说,是一种访问网站时提供你所使用的浏览器类型、操作系统及版本、CPU类型、浏览器渲染引擎、浏览器语言、浏览器插件等信息的标识。UA字符串在每次浏览器HTTP请求时发送到服务器。

浏览器UA字串的标准格式为:浏览器标识(操作系统标识;加密等级标识;浏览器语言)渲染引擎标识 版本信息

http中常见的请求头和响应头分别有哪些,及其作用

请求头: 
Accept: text/html,image/*(浏览器可以接收的类型) 
Accept-Charset: ISO-8859-1(浏览器可以接收的编码类型) 
Accept-Encoding: gzip,compress(浏览器可以接收压缩编码类型) 
Accept-Language: en-us,zh-cn(浏览器可以接收的语言和国家类型) 
Host: www.it315.org:80(浏览器请求的主机和端口) 
If-Modified-Since: Mon, 6 Jul 2015 18:23:51 GMT(某个页面缓存时间) 
Referer: http://www.it315.org/index.jsp(请求来自于哪个页面) 
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)(浏览器相关信息) 
Cookie:(浏览器暂存服务器发送的信息) 
Connection: close(1.0)/Keep-Alive(1.1)(HTTP请求的版本的特点) 
Date: Mon, 6 Jul 2015 18:23:51 GMT(请求网站的时间)

响应头: 
Location: http://www.it315.org/index.jsp(控制浏览器显示哪个页面) 
Server:apache tomcat(服务器的类型) 
Content-Encoding: gzip(服务器发送的压缩编码方式) 
Content-Length: 80(服务器发送显示的字节码长度) 
Content-Language: zh-cn(服务器发送内容的语言和国家名) 
Content-Type: image/jpeg; charset=UTF-8(服务器发送内容的类型和编码类型) 
Last-Modified: Mon, 6 Jul 2015 18:23:51 GMT(服务器最后一次修改的时间) 
Refresh: 1;url=http://www.it315.org(控制浏览器1秒钟后转发URL所指向的页面) 
Content-Disposition: attachment; filename=aaa.jpg(服务器控制浏览器发下载方式打开文件) 
Transfer-Encoding: chunked(服务器分块传递数据到客户端)  
Set-Cookie:SS=Q0=5Lb_nQ; path=/search(服务器发送Cookie相关的信息) 
Expires: -1(服务器控制浏览器不要缓存网页,默认是缓存) 
Cache-Control: no-cache(服务器控制浏览器不要缓存网页) 
Pragma: no-cache(服务器控制浏览器不要缓存网页)   
Connection: close/Keep-Alive(HTTP请求的版本的特点)   
Date: Mon, 6 Jul 2015 18:23:51 GMT(响应网站的时间)

Tomcat服务器的默认端口是多少?怎样修改tomcat的端口

Tomcat服务器的默认端口是8080;在tomcat下的\conf\server.xml中的Connector元素里的<Connector port=”8080”.....>把8080改成你想要的端口即可。

什么是cookie? cookie有什么作用?

Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。用户每次访问站点时,Web 应用程序都可以读取 Cookie 包含的信息。

Cookie 为 Web 应用程序保存用户相关信息提供了一种有用的方法。例如,当用户访问您的站点时,您可以利用 Cookie 保存用户首选项或其他信息,这样,当用户下次再访问您的站点时,应用程序就可以检索以前保存的信息。

简述JSP中动态include与静态include的区别

动态include用jsp:include动作实现,<jsp:include page="included.jsp" flush="true" /> 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数;

静态include用include伪码实现,<% @ include file="included.htm" %>,不会检查所含文件的变化,适用于包含静态页面。

简述表单中POST和GET的区别

GET方法

资源类型 :主动的或被动的

数据类型 :文本

数据量 :最多255个字符。尽管HTTP协议并没有限制查询串的长度,某些浏览器和web服务器可能不能处理超过255个字符的数据。

可见性 :数据是URL的一部分,在浏览器的URL地址栏中用户可见。

缓存 :数据可以在浏览器的URL历史中缓存。

POST方法

目标资源类型 :主动的

数据类型 :文本或二进制数据

数据量 :没有限制 。

可见性 :数据不是URL的一部分而是作为请求的消息体发送,因此在浏览器的URL地址栏中对用户不可见。

缓存 :数据不能在浏览器的URL历史中缓存。

简称JSP的执行过程

首先,由客户端浏览器向Web服务器提出访问JSP页面的请求(Request),然后由JSP引擎负责将JSP转换成Servlet,产生的servlet经过编译后生成类文件,然后再把类文件加载到内存执行。最后,由Web服务器将执行结果即(Response)给客户端浏览器。

较JSP而言,Servlet有什么优点,有什么缺点?

优点:响应客户端的请求,根据请求动态响应,最大的优点做为一个服务,控制程序的流向,过滤等。mvc中,控制就是servlet。

缺点:Servlet在表示逻辑上对于视图的表示相对于JSP麻烦太多,在负责显示工作完成并生成页面上,JSP更优。

JavaWeb知识点总结一的更多相关文章

  1. JavaWeb知识点总结

    >一: 创建Web项目项目说明:1.java Resources:java源文件2.WebContent:网页内容html.css.js.jsp.资源.配置文件等 HTML:Hyper Text ...

  2. javaWeb知识点学习(一)

    1.静态页面的传递过程 在静态WEB程序中,客户端使用WEB浏览器(IE.FireFox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我现在需 ...

  3. JavaWeb知识点

  4. 1.JavaWeb 知识点概览

    1.tomcat服务器的安装和配置.http协议 1.1 虚拟目录的 /*映射*/(配置Context元素)(server.xml catalina\localhost\) http://blog.c ...

  5. 程序员必懂:javaweb三大框架知识点总结

    原文链接:http://www.cnblogs.com/SXTkaifa/p/5968631.html javaweb三大框架知识点总结 一.Struts2的总结 1.Struts 2的工作流程,从请 ...

  6. Java-web易混淆知识点整理

    Java-web易混淆知识点 post和get区别 post: 数据不会显示在地址栏 安全 大小无限制 可以提交二进制文件 get: 数据显示在地址栏 不安全 get方式提交有大小限制(约4kb) 相 ...

  7. Web后端 JAVAWeb面试考查知识点

    面试知识点:1:简单讲一下Java的跨平台原理答:由于非跨平台的情况下,对于不同的操作系统,那么就需要开发几套不同程序代码.为了解决这个问题,java通过不同系统,不同版本,不同位数的JVM来屏蔽不同 ...

  8. JavaWeb遗漏的知识点

    1. String javax.servlet.ServletContext.getRealPath(String path)方法 官方文档解释:Gets the real path correspo ...

  9. JavaWeb核心知识点

    一:HTTP协议     一.概述 1. 概念:超文本传输协议 2. 作用:规范了客户端(浏览器)和服务器的数据交互格式 3. 特点 1. 简单快速:客户端向服务器请求服务时,仅通过键值对来传输请求方 ...

随机推荐

  1. java中/与%的区别

    System.out.println(3/5) = 0: System.out.println(2/5) = 0: System.out.println(4/5) = 0: System.out.pr ...

  2. easyui 放大镜图标

    iconCls:search 对应的 easyui的查询图标忒丑 想用放大镜图标 iconCls:zoom 找半天找到放大镜图标的 然后去icon.css文件中查 发现这个样式就叫zoom.

  3. haproxy + rabbitmq + keepalived的高可用环境搭建

    一.rabbitmq的搭建:参考rabbimq的安装及集群设置 二.安装和配置haproxy 1.安装haproxyyum install haproxy 2.安装rsysloga. 检查rsyslo ...

  4. Solr 创建core 从MySql数据库中导入数据

    一.创建数据表和数据 在MySql数据中创建mysolrInfo表, 创建字段 id 主键,自动增加 pname :姓名 age :年龄 addtime :增加时间 增加几条数据 二.创建core 当 ...

  5. 从头认识java-14.4 Java提供的数组的有用功能(2)

    接着上一章节,我们继续介绍Java提供的数组的有用功能. 3.元素的对照Comparator package com.ray.ch14; import java.util.Arrays; import ...

  6. Linux使用nginx部署Laravel

    问题描述 Laravel是PHP下当今最受欢迎的web应用开发框架,github上start数远超第二名Symfony,以前我用这个框架做项目的时候通常就是扔到apache里面,然后配置.htacce ...

  7. 关于批量插入数据之我见(100万级别的数据,mysql)

    因前段时间去面试,问到怎样高效向数据库插入10万条记录,之前没处理过类似问题.也没看过相关资料,结果没答上来,今天就查了些资料.总结出三种方法: 測试数据库为mysql!!! 方法一: public ...

  8. 三分钟教你学Git(十三) - 二分查找

    比方说你收到了错误报告,然后你知道前几天明明是好的.可是这几天有好多新的commit被部署了.那么我们怎么迅速的找到第一个引入Bug的commit呢? 我们能够使用git bisect,git利用二分 ...

  9. ContentProvider之通过ContentResolver获取图像、视频、音频举例

    MediaStore中定义了一系列的数据表格,通过ContentResolver提供的查询接口,我们能够得到各种须要的媒体信息.通过下面两个URI能够扫描设备外部和内部的媒体文件.Android系统提 ...

  10. 【Excle数据透视表】如何为一个字段添加多种分类汇总方式

    解决方案1 右键单击人员分类字段包含的任意单元格→右键→字段设置→自定义→(最大值.最小值) 解决方案2 单击人员分类→分析→字段设置