Web核心

静态资源:HTML,CSS,JavaScript,图片等,负责页面展现

动态资源:Servlet,JSP等,负责逻辑处理

数据库:负责存储数据

HTTP协议:定义通信规则

Web服务器:负责解析HTTP协议,解析请求资源,并发送响应数据

HTTP

请求数据响应数据之间按照一定的格式进行数据的传输

特点:1、基于TCP协议:面向连接、安全;

​ 2、一次请求对应一次响应;

​ 3、每次请求数据都是独立的,

​ 缺点:导致多次请求间不能共享,但是在Java中可以使用会话技术(Cookie,Session)

​ 优点:但是请求速度很快;

请求数据的格式:

1、请求行:请求数据的第一行,其中GET表示请求方式(后面有一个空格),/表示请求资源路径,HTTP/1.1表示协议版本

2、请求头:第二行开始,格式为key: value格式

3、请求体:POST请求的最后一部分,存放请求参数

常见的HTTP请求头:

1、HOST:表示请求的主机名

2、User-Agent:浏览器版本

3、Accept:表示浏览器能接收的资源类型------文本->text/* 图片->image/* /表示所有

4、Accept-Language:表示浏览器偏好的语言,服务器可以据此返回不同语言的网页

5、Accept-Encoding:表示浏览器可以支持的压缩类型

GET请求和POST请求的区别:

1、GET请求的请求参数在请求行中,没有请求体

2、POST请求的请求参数在请求体中

3、GET请求的请求参数大小有限制,POST请求没有

GET请求的请求参数,位于请求行中?之后的位置上

响应数据的格式:

1、响应行:响应数据的第一行,其中HTTP/1.1表示协议版本,200表示响应状态码,OK表示状态码描述

2、响应头:第二行开始,格式为:key:value形式

3、响应体:最后一部分,存放响应数据

常见的HTTP响应头:

1、Content-Type:表示该相应内容的类型

2、Content-Length:表示该响应内容的长度(字节数)

3、Content-Encoding:表示该响应压缩算法

4、Cache-Control:指示客户端应如何缓存

需要着重记住的状态码:

1、200--------客户端请求成功,即处理成功

2、404--------请求资源不存在,一般是URL输入有误,或者网站资源被删除了(修改路径)

3、500--------服务器发生不可预期的错误,服务器出现异常,应该前往日志进行修改(Java代码)

较为详细的相关知识,可以前去下面的网站进行查询和学习:

https://cloud.tencent.com/developer/chapter/13553

Web服务器--Tomcat

轻量级的web服务器

对于Tomcat下载和配置,可以参考我的这一篇博客:https://www.cnblogs.com/liuzijin/p/16424790.html

对于利用Tomcat创建Maven Web项目的相关步骤和需要注意到的问题,可以参考我的这一篇博客:https://www.cnblogs.com/liuzijin/p/16654344.html

集成本地Tomcat

1、点击+号,选择Tomcat Server中的Local,选中,找到你本地下载的Tomcat

2、然后点击Deployment,点击+号,选择其中的Artifacts,找到你想要录入的jar包,最后APPLY--->OK

点击左边的红色框框,表示关闭集成Tomcat

Maven插件

快捷键:alt+insert插入插件

插件运行Maven项目的速度快于集成Tomcat运行Maven项目的速度

Servlet是Java提供的一门动态Web资源开发技术

是JavaEE规范之一,一个接口

快速入门

1、创建web项目,导入Servlet依赖坐标

依赖范围(scope):必须配置成provided

2、创建:定义一个类,实现Servlet接口,并重写接口中的所有方法,并在service方法中输入一句话

3、配置:在类上使用@WebServlet注释,配置该Servlet的访问路径(/开头)

注意:使用该注解也是有版本限制的,3.0以下的版本都不能使用该注解,可以选择更换到更好级别的版本奥

还有可能出现以下情况:

如果出现这种情况,可以选择New---->Settings--->Always update...,就可以啦,这种方法,对于我的错误是可以的,大家也可以积极去尝试一下

4、访问:启动Tomcat,浏览器输入URL,访问该Servlet

Javaweb学习笔记第十一弹(内含Servlet相关知识呦!)的更多相关文章

  1. Javaweb学习笔记——(十一)——————JSP、会话跟踪、Cookie、HttpSession

    JSP1.什么是JSP jsp即java server pages,它是Javaweb的动态资源. jsp = html + java脚本 + jsp动态标签(包含EL表达式)2.JSP中java脚本 ...

  2. JavaWeb学习笔记(十一)—— JavaWeb开发模式【转】

    SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...

  3. JavaWeb学习笔记总结 目录篇

    JavaWeb学习笔记一: XML解析 JavaWeb学习笔记二 Http协议和Tomcat服务器 JavaWeb学习笔记三 Servlet JavaWeb学习笔记四 request&resp ...

  4. javaweb学习笔记整理补课

    javaweb学习笔记整理补课 * JavaWeb: * 使用Java语言开发基于互联网的项目 * 软件架构: 1. C/S: Client/Server 客户端/服务器端 * 在用户本地有一个客户端 ...

  5. VSTO 学习笔记(十一)开发Excel 2010 64位自定义公式

    原文:VSTO 学习笔记(十一)开发Excel 2010 64位自定义公式 Excel包含很多公式,如数学.日期.文本.逻辑等公式,非常方便,可以灵活快捷的对数据进行处理,达到我们想要的效果.Exce ...

  6. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...

  7. angular学习笔记(三十一)-$location(2)

    之前已经介绍了$location服务的基本用法:angular学习笔记(三十一)-$location(1). 这篇是上一篇的进阶,介绍$location的配置,兼容各版本浏览器,等. *注意,这里介绍 ...

  8. angular学习笔记(三十一)-$location(1)

    本篇介绍angular中的$location服务的基本用法,下一篇介绍它的复杂的用法. $location服务的主要作用是用于获取当前url以及改变当前的url,并且存入历史记录. 一. 获取url的 ...

  9. python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法

    python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...

  10. 20145330《Java学习笔记》第一章课后练习8知识总结以及IDEA初次尝试

    20145330<Java学习笔记>第一章课后练习8知识总结以及IDEA初次尝试 题目: 如果C:\workspace\Hello\src中有Main.java如下: package cc ...

随机推荐

  1. Navicat连接Oracle时报错ORA-28547:完美解决

    1. 先用你的IDEA或者别人的连接到oracle数据库(为了查询版本) 1.1 查询版本SQL:select * from v$version; 2. 引入对应的oci.dll文件 链接:https ...

  2. 【2020NIO.AC省选模拟#10】C. 寄蒜几盒

    题目链接 原题解: 可以发现,假设我们把凸多边形看做障碍,一个点没有被染色当且仅当在它的位置上能看到凸多边形任意两条相对的边中的一条(也就是能看到至少$\dfrac{n}{2}$条边). 对于每个询问 ...

  3. developer mode

    PS C:\Windows\system32> reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersio ...

  4. Python基础数据类型-list(列表)

    a = [1, 2, 3] a.append([1, 4]) a.append(8) a.append([8, 9, '10']) # 添加的是整体,即:将输入对象添加到列表末尾 print(a) # ...

  5. 【LeetCode】——分割回文串II

    继续与动态规划斗智斗勇... 132. 分割回文串 II - 力扣(LeetCode) (leetcode-cn.com) 分析:记f[i]表示将字符串s[0:i]分割的最小次数.我们需要将列举出在[ ...

  6. Control M 复习笔记

    记录一些复习过程想通的知识点 1.我们教案中看到的图基本都是复平面,从来没有看到过所谓s域或z域,不同的稳定区域只是因为从复平面到函数中存在不同的映射过程(s函数和z函数). s函数是纯粹的频域,也就 ...

  7. Treewidget节点的增加

    父节点的创建 // 隐藏QTreewidget标题头 ui->treeWidget->header()->hide(); // 实现Treewidget父节点的挂载 // 创建存放Q ...

  8. 01. JavaScript基础知识

    一.JavaScript简介   JavaScript 是一门解释型编程语言,解释型编程语言指代码不需要手动编译,而是通过解释器边解释边执行.所以,要运行 JS,我们需要在计算机中安装 JS 的解释器 ...

  9. vs 2015 默认管理员启动

    方法一: 找到 VS快捷方式 所在位置,并对其高级属性中的"用管理员身份运行"进行勾选,然后进行确定. 此方法 如果是通过sln文件的快捷方式打开的,不是管理员 方法二: 1.打开 ...

  10. php【websocket】

    在PHP中,开发者需要考虑的东西比较多,从socket的连接.建立.绑定.监听等都需要开发者自己去操作完成,对于初学者来说,难度方面也挺大的.下面就简单介绍一下,可供参考 一.socket协议的简介 ...