JAVA web 相关知识点
1: web的三个核心标准:
URL: http VS https
HTTP: 通信协议,客户端/服务器端信息交互方式; 特点是无状态;
HTML:
2: HTTP 协议:
http是通用的,无状态的,面向对象的协议。
HTTP协议URL: http://host[:port] [path ] // 三个部分: 协议类型; 主机名(域名或IP地址); 端口号默认是80; 路径以及文件名。
3: Http协议请求格式:
例子: POST /tskcommercewebservices/v2/fivestartsk/users/P160111/employee HTTP/1.1
Host: localhost:9102
Authorization: Bearer 923b8c5a-2b36-46cd-babd-6c72fd0f0a93
Content-Type: text/html;charset=UTF-8
A 请求行:包含3个内容:方法(method) 请求资源URL, 和 HTTP版本。 格式: Method Request-RUI HTTP-version
这里的方法有14种:
GET: 此方法URL传递的参数有限,IKB以下。
POST: 附加的数据没有限制。
HEAD: 取得URI指定的资源的响应消息的报头。
PUT: 保存
DELETE:删除
OPTIONS:查询服务器的性能,查询资源的选项与需求。
TRACE:请求服务器回送收到的请求信息,测试和诊断。
PATCH: 与PUT相似,实体种包含一个表,表中说明该资源的区别。
MOVE: 移动资源
COPY: 复制资源
LINK: 建立连接
B: 请求报头:可选,附加信息,以及客户端自身的信息,常用的有:
Accept : 客户端接收的信息类型。
user-agent: 将客户端操作系统名称和版本信息,浏览器名称,和版本信息告诉服务器
accept-charset: 客户端接受的字符集。
accept-encoding: 客户端接受的编码
accept-language: 可接受的语言
host: 主机和端口,默认端口是80
connection: 指定请求后,保持/关闭连接
C:请求体:可选(如果是get,不能包含本部分, 而POSt/ PUT,DELETE可以带上)。
3: 解析HTTP协议响应
响应由3部分:
A: 状态行: HTTP version, 状态码, 以及解析状态码的短语。
1XX: 提示信息,如请求收到,正在处理。
2XX:成功
3XX: 重定向
4XX: 客户端错误,请求端含错的内容。
5XX:服务器错。
200 OK
304 Not modified
400 Bad request
404 Not found
302/307 : 表示临时重定向,请求的文档已经临时移动到其他位置,该文档新的URL将在location响应报头中给出。
401: 浏览器访问的是受密码保护的
403: 拒绝提供服务
404:找不到资源
500: 内部服务器错误。
503:服务器暂时性超载。不能处理当前请求。
B:响应报头:allow: server支持的请求方法。
Content-Encoding: 编码
Content-Length:响应中数据的字节长度
Content-Type:MIME类型
Date: 发送日期
Last-Modified: 返回数据的最后修改时间
Location: 重定向请求到一个新URL。
Refresh: 指定浏览器缓存数据的时间。
Expires: 缓存数据的时间
Server: 服务器名称。
C:响应正文:
4: get VS post:
Get : 请求资源。可以在URL后面附件一些参数。
缺点: 如果用户在地址栏中输入太长的内容,可能导致GET无法正常工作。
另外参数是追加到地址栏中,因此不安全。
参数用?开头,参数之间用&分割
Post:不仅可以请求资源,而且可以发送一些表单数据。
post安全;
post传递数据数量不受限制。但是要将Content-Type设置为application/x-www.form-urlencoded, 将Content-length 设置为实体内容的长度。
JAVA web 相关知识点的更多相关文章
- Java Web相关技术(汇聚页)
Java Web相关技术(汇聚页) 初学Java Web(2)——搭建Java Web开发环境
- Java web相关内容
我们即将学习Java web 这是通过查阅资料找到的和Java web 相关的内容. 一:Java web的含义 JavaWeb,是用Java技术来解决相关web互联网领域的技术总和.web包括:we ...
- 【Java学习系列】第4课--Java Web相关
本文地址 分享提纲: 1.概述 2. Jsp基础 2.1 1.概述 1.1)[来源和先导] 本文主要的java web的教程来源JSP是 菜鸟教程JSP 和 天码营Java Web. 主要的先 ...
- Java Web Servlet知识点讲解(一)
一.Web应用架构 如图所示: HTTP协议:一个简单的请求一响应协议,通常运行在TCP之上,它指定了客户端可能发送给服务器什么样的信息以及得到什么样的响应. JDBC:Java语言中用来规范客户端程 ...
- Java容器相关知识点整理
结合一些文章阅读源码后整理的Java容器常见知识点.对于一些代码细节,本文不展开来讲,有兴趣可以自行阅读参考文献. 1. 思维导图 各个容器的知识点比较分散,没有在思维导图上体现,因此看上去右半部分很 ...
- Java Web Servlet知识点讲解(二)
一.定义Servlet: public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpSer ...
- Java并发相关知识点梳理和研究
1. 知识点思维导图 (图比较大,可以右键在新窗口打开) 2. 经典的wait()/notify()/notifyAll()实现生产者/消费者编程范式深入分析 & synchronized 注 ...
- Java Web相关问题
关于这两天主要问题的解答: (1) 驱动程序无法使用安全套接字层(SSL)加密与 SQL Server 建立安全连接.错误: java.lang.RuntimeException: Could no ...
- Java Web架构知识整理——记一次阿里面试经历
惭愧,从一次电面说起.我个人在某国企做一名软件设计师,国企大家都懂的,待遇一般而且没啥意思,做的方向基本都是操作系统.驱动和工具软件的开发,语言基本都是C/C++.最近也想跳槽,刚好有幸得到了一次阿里 ...
随机推荐
- 语义web相关概念
前言:最近做的项目是自然语言处理相关的,看了一本书<语义web技术基础>,总的来看,接触自然语言处理,语义理解也有差不多一年的时间了.这两天想了一想,自己究竟学到了什么,掌握了哪些新的知识 ...
- spring配置hibernate映射文件-------通配符
<!-- 这里一定要注意是使用spring的mappingLocations属性进行通配的 --> <property name="mappingLocation ...
- Oracle数据库类型总结
RACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型.数字类型.日期类型.LOB类型.LONG RAW& RAW类型.ROWID & ...
- UvaLive 5811 概率DP
题意 : 有54张牌 问抽多少张牌能使每种花色都至少是给定的数字 两张王牌可以被选择为任何花色 高放学长真是太腻害辣! 设置dp[][][][][x][y] 前四维代表四种真的花色的数量 后两维xy代 ...
- Linux嵌入式 -- 内核 - 内核定时器
1. 度量时间差 时钟中断由系统的定时硬件以周期性的时间间隔产生,这个间隔(即频率)由内核根据HZ来确定,HZ是一个与体系结构无关的常数,可配置(50-1200),在X86平台,默认值为1000(每 ...
- Flume-NG源码阅读之HDFSEventSink
HDFSEventSink是flume中一个很重要的sink,配置文件中type=hdfs.与此sink相关的类都在org.apache.flume.sink.hdfs包中. HDFSEventSin ...
- 这样子覆盖jquery的$
window.$ = function(){ alert('nihao'); } window.ad = function(){ alert('nihao1'); } !function($){ $( ...
- Android在layout xml中使用ViewStub完成动态加载
Android在layout xml中使用ViewStub完成动态加载 一.Layout XML文件常见的两种模块加载方式 1.静态加载:被加载的模块和其它模块加载的时间一样. <include ...
- spring:自定义限定符注解@interface, 首选bean
spring:自定义限定符注解@interface, 首选bean 1.首选bean 在声明bean的时候,通过将其中一个可选的bean设置为首选(primary)bean能够避免自动装配时的歧义性. ...
- Docker 介绍安装
简介: Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行 ...