diff --git a/docs/chapter01.md b/docs/chapter01.md index e7d0dbb..7f8d8fc 100644 --- a/docs/chapter01.md +++ b/docs/chapter01.md @@ -2,22 +2,23 @@ ### 1.1 Web开发的基本概念 (了解) #### 1.1.1 什么是Web应用? -> Web App 是基于 Web 技术开发的应用程序,用户可以通过浏览器访问和使用,而无需下载和安装。Web App 可以在不同的设备和平台上运行,无需针对不同的操作系统进行开发和维护,具有较好的跨平台兼容性。Web App 通常使用 HTML、CSS、JavaScript 等 Web 技术进行开发,可以访问互联网上的各种资源和服务。 +> Web应用是基于 Web 技术开发的应用程序,用户可以通过浏览器访问和使用,而无需下载和安装应用。Web应用可以在不同的设备和平台上运行,无需针对不同的操作系统进行开发和维护,具有较好的跨平台性。 -#### 1.1.2 Web App 的优点 -- **跨平台兼容性好:** Web App 可以在不同的设备和平台上运行,无需针对不同的操作系统进行开发和维护,具有较好的跨平台兼容性。 -- **开发成本低:** Web App 的开发成本相对较低,因为无需针对不同的操作系统进行开发和维护,可以使用 Web 技术进行开发。 -- **维护成本低:** Web App 的维护成本相对较低,因为可以在服务器端进行维护和更新,无需对每个设备进行更新。 -- **更新和发布灵活:** Web App 的更新和发布较为灵活,可以通过 Web 服务器进行发布和更新,无需通过应用商店进行审核和等待。 -- **无需下载和安装:** Web App 可以通过浏览器直接访问和使用,无需下载和安装,使用较为方便。 -- **易于扩展和集成:** Web App 可以轻松地集成和扩展各种 Web 服务和 API,例如社交网络、在线支付、地图服务等。 -#### 1.1.3 Web App 的缺点 -- **性能和用户体验相对较差:** Web App 受限于浏览器的性能和功能,因此性能和用户体验相对较差,特别是在移动设备上。 -- **依赖网络连接:** Web App 需要依赖网络连接进行访问和使用,如果网络连接不稳定或者断开,用户无法继续使用应用程序。 -- **难以实现离线体验:** Web App 难以实现离线体验,因为需要依赖网络连接进行访问和使用。 -- **安全性和隐私保护问题:** Web App 可能存在安全性和隐私保护问题,因为需要使用网络进行数据传输和处理。 -- **受限于浏览器:** Web App 受限于浏览器的功能和规范,因此开发者需要考虑浏览器的兼容性和规范。 +#### 1.1.2 Web应用的优点 +- **跨平台兼容性好:** Web应用可以在不同的设备和平台上运行,无需针对不同的操作系统进行开发和维护,具有较好的跨平台兼容性。 +- **开发成本低:** Web应用的开发成本相对较低,因为无需针对不同的操作系统进行开发和维护,可以使用 Web 技术进行开发。 +- **维护成本低:** Web应用的维护成本相对较低,因为可以在服务器端进行维护和更新,无需对每个设备进行更新。 +- **更新和发布灵活:** Web应用的更新和发布较为灵活,可以通过 Web 服务器进行发布和更新,无需通过应用商店进行审核和等待。 +- **无需下载和安装:** Web应用可以通过浏览器直接访问和使用,无需下载和安装,使用较为方便。 +- **易于扩展和集成:** Web应用可以轻松地集成和扩展各种 Web 服务和 API,例如社交网络、在线支付、地图服务等。 + +#### 1.1.3 Web应用的缺点 +- **性能和用户体验相对较差:** Web应用受限于浏览器的性能和功能,因此性能和用户体验相对较差,特别是在移动设备上。 +- **依赖网络连接:** Web应用需要依赖网络连接进行访问和使用,如果网络连接不稳定或者断开,用户无法继续使用应用程序。 +- **难以实现离线体验:** Web应用难以实现离线体验,因为需要依赖网络连接进行访问和使用。 +- **安全性和隐私保护问题:** Web应用可能存在安全性和隐私保护问题,因为需要使用网络进行数据传输和处理。 +- **受限于浏览器:** Web应用受限于浏览器的功能和规范,因此开发者需要考虑浏览器的兼容性和规范。 #### 1.1.4 web应用工作流 @@ -30,7 +31,7 @@ - [五分钟了解互联网Web技术发展史](https://cloud.tencent.com/developer/article/1808394) - [Web开发技术发展历史](https://www.cnblogs.com/datapool/p/6218105.html) -#### 1.2.2 当前Web开发的主要技术栈 +#### 1.2.2 当前Web应用开发的主要技术栈 - **前端技术栈:** - **HTML5:** 提供了更丰富和语义化的标记,增强了多媒体支持。 @@ -58,18 +59,10 @@ - **调试工具:** 例如 Chrome DevTools、Firebug 等。 - **版本控制工具:** 例如 Git、SVN 等。 -#### 1.2.3 未来的Web开发技术趋势预测 -- **持续集成与部署(CI/CD):** 更加自动化的工作流程将会成为常态,以提高开发效率和软件质量。 -- **微服务架构:** 微服务将继续流行,因为它提高了系统的可扩展性和可维护性。 -- **容器化技术:** Docker 和 Kubernetes 等技术将更加普及,用于部署和管理应用。 -- **无服务器架构(Serverless):** 减少运维负担,专注于业务逻辑的编写。 -- **人工智能和机器学习:** AI 和 ML 将被更广泛地应用于Web应用中,以增强用户体验和自动化后台任务。 -- **隐私和安全:** 隐私保护技术和加密方法将成为开发过程中的重点。 - ### 1.3 什么是Java Web开发?(了解) > Java Web开发是指使用Java语言来构建和维护可以在Web浏览器上运行的应用程序的过程。这些应用程序通常由服务器端组件和客户端组件组成,服务器端负责处理业务逻辑并提供数据给客户端,而客户端则负责显示数据并允许用户与之交互。 -- **Java Web开发的主要组成部分** +- **Java Web开发的主要技术** - **服务器端技术:** 包括Servlets、JSP (Java Server Pages)、JavaBeans、EJB (Enterprise JavaBeans)、Spring框架等。 - **客户端技术:** 主要是HTML、CSS和JavaScript,用于构建用户界面; 前端框架如Angular、React、Vue.js等。 - **中间件:** 如Servlet容器(例如Tomcat)、应用服务器(例如WildFly、GlassFish)等。 diff --git a/docs/chapter02.md b/docs/chapter02.md index 44d44d7..0525554 100644 --- a/docs/chapter02.md +++ b/docs/chapter02.md @@ -13,7 +13,7 @@ - URI = Uniform Resource Identifier 统一资源标志符 > URI是抽象的定义,不管用什么方法表示,只要能标识一个资源,就叫URI. URI包括URL和URN.后来urn没流行起来,导致几乎目前所有的uri都是url。 - URL = Uniform Resource Locator 统一资源定位符 -> 是URI的一个子集,又称统一资源定位器、定位地址、URL地址,俗称网址,是因特网上标准的资源的地址,作用是为了告诉使用者某个资源在 Web 上的地址。URL包含访问资源所需的协议类型(如HTTP、HTTPS、FTP)和资源的网络位置(如域名和文件路径) +> 是URI的子集,又称统一资源定位器、定位地址、URL地址,俗称网址,是因特网上标准的资源的地址,作用是为了告诉使用者某个资源在 Web 上的地址。URL包含访问资源所需的协议类型(如HTTP、HTTPS、FTP)和资源的网络位置(如域名和文件路径) - URN = Uniform Resource Name 统一资源名称 > 指的是资源而不指定其位置或是否存在. URN 的一个最好的例子是 ISBN 号,它被用来唯一地识别一本书。URN 与 URL 完全不同,因为它不包含任何协议。 @@ -155,10 +155,9 @@ Session表示会话,服务器端用来跟踪用户状态的一种机制。在jav HTML(HyperText Markup Language,超文本标记语言)是一种用来告知浏览器如何组织页面的标记语言。 HTML 由一系列的元素组成,这些元素可以用来包围或标记不同部分的内容,使其以某种方式呈现或者工作 -HTML 元素(标签): +HTML 元素(标签)的主要部分: ![](./resources/imgs/grumpy-cat-small.png) -这个元素的主要部分有: ``` 开始标签(Opening tag):包含元素的名称(本例为 p),被左、右角括号所包围。开头标签标志着元素开始或开始生效的地方。在这个示例中,它在段落文本的开始之前。 内容(Content):元素的内容,本例中就是段落的文本。 diff --git a/docs/resources/课程速成.md b/docs/resources/课程速成.md new file mode 100644 index 0000000..0ffb235 --- /dev/null +++ b/docs/resources/课程速成.md @@ -0,0 +1,74 @@ +## 1. 概述 + +### 1.1 Web开发的基本概念 +#### 1.1.1 什么是Web应用? +> Web应用是基于 Web 技术开发的应用程序,用户可以通过浏览器访问和使用,而无需下载和安装应用。Web应用可以在不同的设备和平台上运行,无需针对不同的操作系统进行开发和维护,具有较好的跨平台兼容性。 + +### 1.3 什么是Java Web开发? +> Java Web开发是指使用Java语言来构建和维护可以在Web浏览器上运行的应用程序的过程。这些应用程序通常由服务器端组件和客户端组件组成,服务器端负责处理业务逻辑并提供数据给客户端,而客户端则负责显示数据并允许用户与之交互。 + +## 2. web页面开发基础 + +### 2.1 HTTP协议 + + +#### 2.1.1 URI、URL、URN +- URL: Uniform Resource Locator 统一资源定位符 +> 是URI的子集,URL包含访问资源所需的协议类型(如HTTP、HTTPS、FTP)和资源的网络位置(如域名和文件路径) + +#### 2.1.3 HTTP请求包结构 + + +#### 2.1.4 HTTP请求方法 + +#### 2.1.5 HTTP请求头 + + +#### 2.1.6 HTTP响应包结构 + + +#### 2.1.7 HTTP状态码 +- **200 OK:** 请求成功。 +- **404 Not Found:** 请求失败,服务器上没有请求的资源。 +- **500 Internal Server Error:** 请求失败,服务器出现未知的内部错误。 + +#### 2.1.8 HTTP响应头 + + +#### 2.1.9 Cookie + +HTTP 是无状态协议,不能以状态来区分和管理请求和响应。也就是说,无法根据之前的状态进行本次的请求处理。 + +Cookie是为了解决HTTP协议无状态的问题而设计的一种持久化机制,它允许服务器在用户浏览器上存储数据。Cookie 的数据保存在用户浏览器中,服务器可以通过 Cookie 识别用户,从而实现用户个性化。 + +Cookie 主要用于以下三个方面: +- 会话状态管理 +- 个性化设置 +- 浏览器行为跟踪 + + +### 2.2 HTML/CSS/JavaScript基础 + +#### 2.2.1 HTML5基础知识 + +HTML 元素(标签)的主要部分: +![](../resources/imgs/grumpy-cat-small.png) + +``` + 开始标签(Opening tag):包含元素的名称(本例为 p),被左、右角括号所包围。开头标签标志着元素开始或开始生效的地方。在这个示例中,它在段落文本的开始之前。 + 内容(Content):元素的内容,本例中就是段落的文本。 + 结束标签(Closing tag):与开始标签相似,只是其在元素名之前包含了一个斜杠。这标志着该元素的结束。没有包含关闭标签是一个常见的初学者错误,它可能会产生奇特的结果。 +``` + +#### 2.2.2 CSS + + +| 选择器类型 | 解释 | 示例 | +| ------------ |-----------------------------------| -------------------------------- | +| **元素选择器** | 也叫标签选择器,通过标签名选取元素 | `p { color: red; }` 选取所有 `

` 元素,将文本颜色设置为红色。 | +| **类选择器** | 通过类名选取元素 | `.my-class { font-weight: bold; }` 选取具有类名为 `my-class` 的元素,使其字体加粗。 | +| **ID选择器** | 通过ID名称选取唯一元素 | `#unique-id { background-color: yellow; }` 选取ID为 `unique-id` 的元素,背景色设为黄色。 | +| **通配符选择器** | 匹配所有元素 | `* { margin: 0; padding: 0; }` 选取所有元素,清除默认的外边距和内边距。 | + + +#### 2.2.3 JavaScript基本语法和DOM操作 \ No newline at end of file