导图社区 web、HTTP、Tomcat服务器知识点学习笔记
Tomcat在Maven中的插件 <!-- Tomcat插件--><build><plugins><plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat7-maven-plugin</artifact.
网店详情页排版方法分享~包括中心页面组成,优质详情必备,详情页的排版参考方法。感兴趣的小伙伴可以看看哦~
喷绘色彩基础培训方案,内容涵盖色彩基础,喷绘写真。框架清晰,内容丰富,希望对小伙伴有所帮助哦~
酒窖营销计划方案,包括结果目标,过程目标。框架清晰,内容丰富,有需要的小伙伴可以看看哦~ 可供大家参考,借鉴,交流。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
web、HTTP、Tomcat服务器知识点学习笔记
Web概述
什么是服务器?服务器有两种概念 :
1.第一种就是一台电脑 (硬件服务器)
2.第二种指的是在电脑上安装了一个服务器软件(软件服务器)
Web服务器
BS:浏览器服务器
BS简介:JSP,ASP,PHP:基于浏览器访问的应用,把业务逻辑交给服务端完成,客户端仅仅只做界面渲染和数据交换. 例如:各种网页游戏
BS优点: 1.可任何地方进行操作不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。 维护和升级方式简单/成本降低,选择更多 2.只开发服务端,可以跨平台,移植性很强等. 缺点:安全性较低,用户体验较差等;
BS缺点:缺点:安全性较低,用户体验较差等;
CS:客户端服务器
CS简介:是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。 例如:QQ,飞秋等运行在桌面的程序。
CS优点:1.能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。客户端响应速度快/界面较为美观/应用服务器运行数据负荷较轻,较安全,用户界面很丰富,用户体验不错等。
CS缺点:每次升级都需要重新安装,针对于不同的操作系统开发,可移植性很差.
动态网页与静态网页
静态网页:任何人访问显示的数据始终不变。(例如html页面)
动态网页:指web页面的数据是由程序产生的,不同时间点或者不同的人访问页面看到的内容各不相同。 (常用的技术:JSP/Servlet、ASP、PHP等)
常见的web服务器
1.WebLogic是BEA公司的产品,支持JavaEE规范(收费)
2.WebSphere是IBM公司的Web服务器,支持JavaEE规范(收费)
3.Jboss红帽的产品,原来属于开源组织Jboss,后被红帽收购。支持JavaEE规范,免费。
4.Tomcat:开源免费,占用内存小的javaWeb服务器,servlet容器,用java语言开发的
Tomcat服务器
Tomcat的安装
1.exe文件,直接安装版本
2.解压版本 直接解压后就可以使用。(路径不能有空格,不能有中文,不能有特殊符号)
启动闪退?环境变量有问题:1.要在环境变量中配置JAVA_HOME为jdk的根路径。2.在path里面引用“%JAVA_HOME%\bin”
启动出现“Neither the JAVA_HOME nor the JRE_HOME....”说明没安装JAVA_HOME
Tomcat结构
bin
:常用的工具(命令),包括启动(startup.bat)与关闭(shutdown.bat)
conf
:一些xml配置文件
lib
:各种jar包
logs
:日志文件,查询平时的一些错误。
temp
:临时文件
webapps
:项目部署的地方
work
:jsp编译成servlet后的位置
Web应用程序目录结构
静态web应用
1、直接将资源文件复制到项目下即可
2、myWeb(项目名) --1.html --2.html --3.html
动态web应用
如果想要在tomcat里面运行动态网站,必须要遵循一定的目录结构
结构
== website (项目名) WEB-INF(必须) -- web.xml(必须) -- classes(可选) -- lib(可选)
tomcat项目部署
三种方式
1、直接将你的web项目拷贝到webapps目录下,http://localhost:端口号/项目名/资源名称加后缀名
2、修改conf下server.xml文件
1、在host标签下增加<Context path="/hello" docBase="d/myWeb">
2、docBase就是配置web应用程序所在的目录,而path的值就是访问这个应用程序的一个路径,在浏览器上可以输入http://localhost/hello来访问。 我们将通过<Context>配置,通过path值去映射docBase描述的web应用程序的目录的过程叫做虚拟目录。
3、在tomcat/conf/Catalina/localhost下创建任意名称的一个xml文件:如good
文档声明加<Context标签>
2、这种方案配置,xml文件的名称就相当于是path值,也就是说,我们在访问时,可以 http://localhost/good就可以。
MyEclipse整合Tomcat
1、经过整合后,可以直接在myeclipse上操作Tomcat
2、部署项目时,myEclipse会将WebRoot目录拷贝到tomcat的webapps下,然后将WebRoot这个名字改成你在MyEclipses上的目录名称
tomcat虚拟主机(了解即可)
我们所有访问的网址最终都是通过解析是ip+端口号进行访问的
HTTP协议
协议概述
什么是协议
协议就是规定双方如何通信。
1、超文本传输协议 HyperText transfer protocol 是互联网上应用最为广泛的一种网络协议,所有的www都必须遵守这个标准。
2、简单说,我们在做javaweb开发时,浏览器与服务器要通信,它们之间遵守就是http协议。
3、http协议是建立在TCP协议基础上。http协议也是基于请求与响应的模型,http协议默认的端口是80.
请求和响应
1、请求属于客户端一般是用户在操作
2、响应是属于服务器端,是部署在服务器上的应用程序根据客户端的请求作出相应的响应
3、是先有请求再有响应、请求和响应是成对出现
http请求分为三部分
1、请求行
第一个:请求方式 GET POST 第二个:请求资源路径 第三个:协议版本
(面试)get请求和post请求区别
2、请求头
格式 : 名称:值1,值2,….
重要的http请求头
防盗链Referer
它是用于描述请求是从哪个位置来的,使用它可以进行防盗链。
判断刘浏览器User-Agent
通过它可以判断当前用户请求的浏览器
请求时间
这个头可以与http响应头last-modify组合完成服务器缓存策略
3、请求正文(请求体)
请求正文与请求行之间有一空白行,对于请求正文,只有在请求方式是POST的情况下,并且有请求参数,才会有请求正文。
http响应分为三部分
1、响应行:在响应行中最重要的是响应状态码(分为五种)
响应类型
5xx 服务器端错误
4xx 浏览器错误
3xx 代表浏览器向服务器发送主求,服务器完成一部分工作,通知浏览器继续执行其它的操作。
2xx 服务器正确响应,并且响应成功
1xx 代表浏览器向服务器发送请求,服务器没有做任何操作
常见状态码
200 响应成功
302 可以与一个响应头location组合完成重定向。
304 代表服务器端资源没有改变。
404 资源访问不到
405 浏览器请求时请求的方式get/post没有与之对应的方法
500 服务器端错误。
2、响应头
响应头格式 name:值1,值2,…
Location 它与302状态码组全可以完成重定向功能。(response对象)
Content-type:服务器响应回的数据mimeType类型。
refresh 可以实现定时跳转
content-disposition 可以完成文件下载
expires、cache-control、pragma、这三个头可以实现禁用浏览器缓存。
Last-modified 它与304状态码及http请求头 if-modify-since组合完成服务器缓存策略。
3、响应正文
对于http响应正文,是把服务器上当前访问的文件返回,文件可能包含Html、javaScript代码,浏览器内置html和js解析引擎,将标签的内容和js的逻辑解析后得到的数据显示在页面上
调试错误
1、首先确认服务器是否启动成功且没有报错,如果有包括请根据报错异常信息修正程序
2、浏览器访问出错以后要根据http状态码来定位问题出现位置