1.Web概述
1.1 Web和JavaWeb的概念
Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站。
JavaWeb就是用Java技术来解决相关web互联网领域的技术栈
1.2 JavaWeb技术栈
B/S 架构:Browser/Server,浏览器/服务器 架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。
浏览器只需要请求服务器,获取Web资源,服务器把Web资源发送给浏览器即可。
所以说B/S架构的好处:易于维护升级:服务器端升级后,客户端无需任何部署就可以使用到新的版本。
(HTML+CSS+JavaScript)但是由于做出来的这些内容都是静态的,这就会导致所有的人看到的内容将是一模一样。
1.张三
登录以后在网页的右上角看到的是 张三
,而李四
登录以后看到的则是李四
。所以不同的用户访问相同的资源看到的内容大多数是不一样的,要想实现这样的效果,光靠静态资源是无法实现的。所以靠动态资源处理
2.动态资源主要包含Servlet、JSP等,主要用来负责逻辑处理
动态资源处理完逻辑后会把得到的结果交给静态资源来进行展示,动态资源和静态资源要结合一起使用。动态资源处理完逻辑后会把得到的结果交给静态资源来进行展示,动态资源和静态资源要结合一起使用。
3.动态资源虽然可以处理逻辑,但是当用户来登录百度的时候,就需要输入用户名
和密码
,这个时候我们就又需要解决的一个问题是,用户在注册的时候填入的用户名和密码、以及我们经常会访问到一些数据列表的内容展示(如下图所示),这些数据都存储在哪里?我们需要的时候又是从哪里来取呢?数据库
4.数据库
主要负责存储数据。
5.HTTP协议
HTTP协议:主要定义通信规则
浏览器发送请求给服务器,服务器响应数据给浏览器,这整个过程都需要遵守一定的规则,之前大家学习过TCP、UDP,这些都属于规则,这里我们需要使用的是HTTP协议,这也是一种规则。
6.Web服务器
Web服务器:负责解析 HTTP 协议,解析请求数据,并发送响应数据
浏览器按照HTTP协议发送请求和数据,后台就需要一个Web服务器软件来根据HTTP协议解析请求和数据,然后把处理结果再按照HTTP协议发送给浏览器
Web服务器软件有很多,我们课程中将学习的是目前最为常用的Tomcat服务器
2.HTTP
2.1 简介
HyperText Transfer Protocol,超文本传输协议,规定了浏览器和服务器之间数据传输的规则。也就是客户端和浏览器交互数据的格式
也就是客户端向服务器端发送请求的数据和服务器收到请求数据的规则相同才能解析数据 同理服务器端发送响应数据和客户端的数据规则一样 客户端浏览器才能解析
HTTP协议特点
HTTP协议有它自己的一些特点,分别是:
基于TCP协议: 面向连接,安全
TCP是一种面向连接的(建立连接之前是需要经过三次握手)、可靠的、基于字节流的传输层通信协议,在数据传输方面更安全。
基于请求-响应模型的:一次请求对应一次响应
请求和响应是一一对应关系
HTTP协议是无状态协议:对于事物处理没有记忆能力。每次请求-响应都是独立的
无状态指的是客户端发送HTTP请求给服务端之后,服务端根据请求响应数据,响应完后,不会记录任何信息。这种特性有优点也有缺点 总的来说后一次请求不会记录前一次请求的数据
- 缺点:多次请求间不能共享数据
Java使用会话技术Cookie Session 来解决这个问题
- 优点:速度快
请求之间无法共享数据会引发的问题,如: - 京东购物,
加入购物车
和去购物车结算
是两次请求, - HTTP协议的无状态特性,加入购物车请求响应结束后,并未记录加入购物车是何商品
- 发起去购物车结算的请求后,因为无法获取哪些商品加入了购物车,会导致此次请求无法正确展示数据
2.2 请求数据格式
2.3 响应状态码
3.Tomcat
3.1 简介
3.1.1 什么是Web服务器
Web服务器是一个应用程序(软件),对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作,让Web开发更加便捷。主要功能是"提供网上信息浏览服务"。
Web服务器是安装在服务器端的一款软件,将来我们把自己写的Web项目部署到Web Tomcat服务器软件中,当Web服务器软件启动后,部署在Web服务器软件中的页面就可以直接通过浏览器来访问了。
3.2安装
此处省略
3.3 Maven创建web项目
1.使用骨架
然后这里选中webapp
问题可能原因解决办法
webapp没有小蓝点
https://www.likecs.com/show-308010524.html