javaweb简介HTTP以及Tomcat服务器

JavaWeb

简介

在java中,动态web开发的技术统称为JavaWeb.

JavaWeb技术栈

B/S架构

Browser/Server,浏览器/服务器架构模式

特点

​ 客户端只需要浏览器,应用程序的逻辑和数据存储在服务器端。浏览器只需要请求服务器,获取web资源,服务器把web资源发送给浏览器即可。

B/S架构的好处

​ 易于维护升级,服务器升级后,客户端无需任何部署就可以使用到新版本。服务器中的资源可以有静态资源、动态资源:

C/S架构

(Client/Server), 客户端/服务器,APP使用需要下载应用更新繁琐但稳定。

web开发

web:网页,像我们经常会去访问的一些数据连接。主要有以下两种:
📕静态web:

*.html, *.htm这些都是网页的后缀,如果网页上一直存在这些东西,我们就可以进行直接读取。
静态web存在的缺点
1、Web页面无法动态更新,所有用户看到的都是同一个页面。
需要注意的是,像轮播图,点击特效等能够有一定反馈的,他不是动态,而是伪动态,如:JavaScript、VBScript。
2、它无法和数据库交互,数据无法持久化,用户不能交互。

📕动态web:

页面会动态展示:“Web的页面展示的效果因人而异”;
缺点
假如服务器的动态web资源出现了错误,我们需要重新编写我们的后台程序,重新发布,停机维护。
优点
1、可以动态更新,所有用户看到的都不是同一个页面。
2、它可以与数据库交互(数据持久化:注册、商品信息…)

web应用程序

可以提供浏览器访问的程序。

a.html、b.html…多个web资源,这些web资源可以被外界访问,对外界提供服务。
能访问到的任何一个页面或资源,都存在于这个世界的某一个角落的计算机上。

web应用程序编写完成后,若想提供给外界访问:需要一个服务器来统一管理。

web服务器

知识拓展

ASP

微软,国内最早流行,它是在HTML中嵌入了VB的脚本,ASP + COM; 在ASP开发中,基本一个页面都有几千行的业务代码,页面极其混乱,维护成本高。

PHP

PHP开发速度很快,功能强大,跨平台,代码恒简单,但是它无法承载大访问量的情况,局限性高。

JSP/Servlet

sun公司主推的B/S架构,基于java语言。可以承载三高(高并发、高可用、高性能)问题带来的影响。

常用的web服务器

服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息。

服务器特点
Tomcat由Apache组织提供的一种服务器,提供对jsp和servlet的支持。它是一种轻量级的javaweb容器(服务器),也是当前应用最广的javaWeb服务器。
Jboss是一个遵从JavaEE规范的、开发源代码的、纯Java的EJB服务器,它支持所有的JavaEE规范。
GlassFish由Oracle公司开发的一款JavaWeb服务器,它是一款强劲的商业服务器,达到产品级质量(应用很少)。
Resin是CAUCHO公司的产品,是一个非常流行的服务器,对servlet和JSP提供良好的支持,性能也很优良,resin自生采用JAVA开发(收费,应用比较多)。
WebLogic是Oracle公司的产品,是目前应用最广泛的Web服务器,支持JavaEE规范,而且不断的完善以适应新的开发要求,适合大型项目(收费,用的不多,适合大公司)。

Tomcat:由Apache提出,是一个稳定、免费的服务器。
IIS:是微软提出的,Windows中自带。

Tomcat

1、安装、配置Tomcat

​ https://blog.csdn.net/rej177/article/details/126135033

2、Tomcat目录结构

名称介绍
bin用来存放Tomcat服务器的可执行文件程序
conf用来存放Tomcat服务器的配置文件
lib存放Tomcat的jar包
logs用来存放Tomcat服务器运行时输出的日志信息
temp存放Tomcat运行时产生的临时数据
webapp用来存放部署的web工程
work是Tomcat工作时的目录,用来存放Tomcat运行时jsp翻译为Servlet的源码和Session钝化的目录

3、启动

​ ①bin目录下的startup.bat文件,双击启动

​ ②在bin目录下打开cmd,输入catalina run

​ ③配置环境变量后直接输入startup.bat

​ https://blog.csdn.net/wsjzzcbq/article/details/87953594

查看是否启动成功:

	http://localhost:8080
	http://127.0.0.1:8080
	http://真实IP:8080	

​ ④修改端口

在conf—>server.xml---->记事本打开—>Connector port="8080"做出相应的修改,一般不要小于1024,80端口一般不会显示在网址中,比如百度、也是默认端口

​ ⑤可能遇到的问题

  • Java环境变量没有配置
  • 闪退问题:<1>环境变量可能没有配好<2>需要配置兼容性
  • 控制台乱码问题,需要在配置文件中设置:在logging.properties—>ConsoleHandler.encoding = GBK
面试题

谈谈网站是如何进行访问的?

1、输入一个域名,回车

2、检查本机的检查本机的C:\windows\System32\drivers\etc\hosts配置文件下有没有这个域名映射。

​ 有:直接返回对应的ip地址,这个地址中有我们需要访问的web程序,可以直接访问。

​ 没有:去DNC服务器上找(域名管理服务器),找到的话就返回,找不到就返回找不到的信息。

HTTP

HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP上,默认端口是80。(https端口443)

HTTP两个时代

  • http1.0

    客户端可以与web服务器连接后,只能获得一个web资源,断开连接。

  • http2.0

    http/1.1:客户端可以与web服务器连接后,可以获得多个web资源。

HTTP请求

客户端发请求(Request)到服务器。

请求行

请求方式:GET,POST

🌳GET

​ 请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全但是高效。

🌳POST

​ 请求内购携带的参数没有限制,大小没有限制,不会在浏览器URL地址栏显示数据内容,安全但不高效。

请求头
Accept:告诉浏览器,他所支持的数据类型
Accept-Encoding:支持哪种编码格式,GBK UTF-8 GB2312 ISO8859-1
Cache-control:缓存控制
Accept-Language:告诉浏览器,它的语言环境。
Connection:告诉浏览器,请求完成是断开还是保持连接。
......

HTTP响应

服务器响应(Response)给客户端。
响应体:和请求头中的内容相同,但是他会包含Refresh(告诉客户端,多久刷新一次。)

响应状态码:

状态码含义
200表示请求成功 200
3xx请求重定向,重新到一个新的位置去。
4xx找不到资源 404
5xx服务器代码错误 500 502:表示网关错误。

常见面试题

当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值