1.基本概念
web开发:
- web,网页的意思 , www.baidu.com
- 静态web
-
- html,css
- 提供给所有人看的数据始终不会发生变化!
- 动态web
-
- 淘宝,几乎是所有的网站;
- 提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!
- 技术栈:Servlet/JSP,ASP,PHP。
- 在Java中,动态web资源开发的技术统称为JavaWeb。
1.1.1. web应用程序
web应用程序:可以提供浏览器访问的程序。
- a.html.b.html…多个web资源,这些web资源可以被外界访问,对外界提供服务。
- 我们能访问到的任何一个页面或者资源,都存在于这个世界的某一个角落的计算机上。
- URL
- 这些统一的web资源会被放在同一个文件夹下,web应用程序–>Tomcat:服务器。
- 一个web应用由多部分组成 (静态web,动态web)。
-
- html,css,js
- jsp,servlet
- Java程序
- jar包
- 配置文件 (Properties)
- web应用程序编写完毕后,若想提供给外界访问:需要一个服务器来统一管理;
1.1.2. 静态web
- *.htm, *.html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取。通络;
- 静态web存在的缺点:
-
- Web页面无法动态更新,所有用户看到都是同一个页面;
-
-
- 轮播图,点击特效:伪动态;
- JavaScript [实际开发中,它用的最多];
- VBScript;
-
-
- 它无法和数据库交互(数据无法持久化,用户无法交互)。
1.1.3. 动态web
页面会动态展示: “Web的页面展示的效果因人而异”;
缺点:
- 加入服务器的动态web资源出现了错误,需要重新编写后台程序,重新发布;
-
- 停机维护。
优点:
- Web页面可以动态更新,所有用户看到都不是同一个页面;
- 它可以与数据库交互 (数据持久化:注册,商品信息,用户信息…);
2. web服务器
- 服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息;
- IIS
-
- 微软的; ASP…,Windows中自带的
- Tomcat
- 面向百度编程;
- Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,因为Tomcat 技术先进.性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
- Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个Java初学web的人来说,它是最佳的选择。
- Tomcat 实际上运行JSP 页面和Servlet。Tomcat最新版本为9.0。
3. tomcat详解
请你谈谈网站是如何进行访问的!
- 输入一个域名;回车
- 检查本机的 C:\Windows\System32\drivers\etc\hosts配置文件下有没有这个域名映射;
-
- 有:直接返回对应的ip地址,这个地址中,有我们需要访问的web程序,可以直接访问
127.0.0.1 www.subeily.com
-
- 没有:去DNS服务器找,找到的话就返回,找不到就返回找不到;
- 可以配置一下环境变量(可选性)。
发布一个web网站
网站应该有的结构
--webapps :Tomcat服务器的web目录-ROOT-books :网站的目录名- WEB-INF-classes : java程序-lib:web应用所依赖的jar包-web.xml :网站配置文件- index.html 默认的首页- static -css-style.css-js-img-.....
- HTTP协议 : 面试
- Maven:构建工具
-
- Maven安装包
- Servlet 入门
-
- HelloWorld!
- Servlet配置
- 原理
4.Http
4.1 什么是http
HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上
- 文本:HTML,字符串……
- 超文本:图片、音乐、视频、定位、地图……
- 80
HTTPS :更安全
- 443
4.2 http的两个时代
- http1.0
-
- HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接
- http2.0
-
- http/1.1:客户端可以与web服务器连接后,可以获得多个web资源
4.3 http请求
HTTP请求通常包括以下内容:
- 请求行(Request Line):包含请求的方法、目标URL路径和HTTP协议的版本。例如:
GET /index.html HTTP/1.1
-
- 方法:常见的有GET、POST、PUT、DELETE等,表示请求的操作类型。
- URL路径:指定服务器资源的路径。
- HTTP版本:通常为HTTP/1.1或HTTP/2等。
- 请求头(Request Headers):包含一些元信息,用于描述客户端的请求信息,如用户代理、主机等。例如:
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html
常见的请求头有:
-
- Host:请求的目标服务器域名。
- User-Agent:客户端的软件信息。
- Accept:客户端能够接受的数据格式。
- Content-Type:发送数据的类型(通常用于POST和PUT请求)。
- Authorization:授权信息(如果需要身份验证)。
- 请求主体(Request Body):只有在POST、PUT等方法中包含数据时才会出现,主要用来传输客户端的数据,比如表单内容、文件等。
-
- 常用于传递表单数据、JSON、XML等格式的数据。
- 查询参数(Query Parameters):当请求使用GET方法时,通常会在URL中附带查询参数。例如:
GET /search?query=example HTTP/1.1
-
- 查询参数附加在URL的
?
之后,以键=值
对的形式表示,多个参数用&
分隔。
- 查询参数附加在URL的
总结一下,一个典型的HTTP请求可能如下所示:
GET /index.html?query=test HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html(POST或PUT请求可能会有请求主体)