Javaweb学习笔记第十一弹(内含Servlet相关知识呦!)
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相关知识呦!)的更多相关文章
- Javaweb学习笔记——(十一)——————JSP、会话跟踪、Cookie、HttpSession
JSP1.什么是JSP jsp即java server pages,它是Javaweb的动态资源. jsp = html + java脚本 + jsp动态标签(包含EL表达式)2.JSP中java脚本 ...
- JavaWeb学习笔记(十一)—— JavaWeb开发模式【转】
SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...
- JavaWeb学习笔记总结 目录篇
JavaWeb学习笔记一: XML解析 JavaWeb学习笔记二 Http协议和Tomcat服务器 JavaWeb学习笔记三 Servlet JavaWeb学习笔记四 request&resp ...
- javaweb学习笔记整理补课
javaweb学习笔记整理补课 * JavaWeb: * 使用Java语言开发基于互联网的项目 * 软件架构: 1. C/S: Client/Server 客户端/服务器端 * 在用户本地有一个客户端 ...
- VSTO 学习笔记(十一)开发Excel 2010 64位自定义公式
原文:VSTO 学习笔记(十一)开发Excel 2010 64位自定义公式 Excel包含很多公式,如数学.日期.文本.逻辑等公式,非常方便,可以灵活快捷的对数据进行处理,达到我们想要的效果.Exce ...
- Python学习笔记(十一)
Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...
- angular学习笔记(三十一)-$location(2)
之前已经介绍了$location服务的基本用法:angular学习笔记(三十一)-$location(1). 这篇是上一篇的进阶,介绍$location的配置,兼容各版本浏览器,等. *注意,这里介绍 ...
- angular学习笔记(三十一)-$location(1)
本篇介绍angular中的$location服务的基本用法,下一篇介绍它的复杂的用法. $location服务的主要作用是用于获取当前url以及改变当前的url,并且存入历史记录. 一. 获取url的 ...
- python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法
python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...
- 20145330《Java学习笔记》第一章课后练习8知识总结以及IDEA初次尝试
20145330<Java学习笔记>第一章课后练习8知识总结以及IDEA初次尝试 题目: 如果C:\workspace\Hello\src中有Main.java如下: package cc ...
随机推荐
- labwindows/cvi activex 控件无法正常使用问题解决
在进行labwindows/cvi编程时,想使用时间控件,需要在界面上点击右键的activex选项中选择Microsoft Data and Time picker control6.0(SP4).如 ...
- [OC] 链式语法
我们新建了一个类,叫做 OJClass (这可以是 ViewController,UIView,NSObject 等各种类型的类,这里我们把它以UIView进行举例) 现在我们想要用链式语法的方式来设 ...
- 记录一次echarts 中bar 定时跳跃并显示内容
查看echarts api ----- https://www.echartsjs.com/zh/api.html#echarts 搜索 1.dispatchAction 执行的关键 2.hi ...
- 如何保证RabbitMQ的消息按照顺序执行???
可以采用单线程的消费保证消息的顺序性.对消息进行编号,1,2,3,4--消费时按照编号的顺序去消费消息.这样就可以保证消息 按照一定顺序执行.
- ssh scp 相关
1. 设置ssh 的免密登录 1> 将 ~/.ssh/id_rsa.pub文件中的内容拷贝到 远程host的 ~/.ssh/authorized_keys文件中 2> ssh-copy-i ...
- 样式优先级的规则:!important`>行内样式>嵌入样式>外链样式>id选择器>类选择器>标签选择器>复合选择器>通配符>继承样式
CSS样式的优先级应该分成四大类 第一类`!important`,无论引入方式是什么,选择器是什么,它的优先级都是最高的. 第二类引入方式,行内样式的优先级要高于嵌入和外链,嵌入和外链如果使用的选择器 ...
- Vue双向绑定原理 从vue2的Object.defineProperty到vue3的proxy
在网上查找资料的时候,看到很多关于Vue双向绑定的文章都直接说是通过Object.defineProperty实现的,但我隐约记得去年看过尤大的视频,记得好像是用proxy实现的,所以又好好找了一下, ...
- egg框架学习笔记
1.安装 npm i egg-init -g egg-init egg-example --type=simple cd egg-example yarn install npm run dev // ...
- 学习Vue踩过的坑
1.用Vue绑定方法的时候里面的methods:要加s!!! 2.v-on只有在事件监听(@click=" 方法名")和不需要参数时候才不要加 ( ),在胡子写法中{{ fun() ...
- ImmutablePair和ImmutableTriple的使用
场景 当我们调用某个方法,需要有超过一个值的返回时,我们通常会怎么做,比如现在需要调用方法返回姓名和年龄两个属性(假如姓名为张三,年龄为12). 方式一:使用Map,将Map中分别放入name为key ...