Web基础:HTML快速入门
HTML基础语法
HTML(超文本标记语言) 是用于创建网页内容的 标记语言,通过定义页面的 结构和内容 来告诉浏览器如何呈现网页。
超文本(Hypertext) 是一种通过 链接(Hyperlinks) 将不同文本、图像、视频等内容关联起来的信息组织形式,其核心特点是 非线性 和 可扩展性。
为什么需要掌握HTML?
学习Web渗透需要掌握HTML,因为HTML是网页内容的结构语言,渗透测试的核心目标是发现并利用网站漏洞。通过HTML标签(如<form>、<input>、<a>)可以:
-
分析页面逻辑:快速定位漏洞入口(如登录表单、上传功能);
-
构造恶意请求:直接篡改HTML参数(如SQL注入、XSS攻击)或绕过前端验证;
-
绕过安全防护:利用HTML结构识别WAF规则盲区或隐藏接口;
html代码编辑方式
文本编辑器
HTML代码的编辑方式多种多样,可以根据需求、场景和技术水平选择不同的工具或方法。
-
Visual Studio Code(推荐,功能强大且免费)
-
Sublime Text(轻量高效)
在线编辑器
-
JSFiddle
-
CodeSandbox
我建议从CodePen开始。它用户友好,非常适合初学者。

让我们编写我们的第一个HTML代码!这里有一个简单的例子:
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><title>我的第一个网页</title></head><body><h1>你好,世界!</h1><p>这是我的第一个HTML页面。</p></body></html>
代码含义如下:
-
<!DOCTYPE html>告诉浏览器这是一个HTML5文档。 -
<html>是HTML页面的根元素。 -
<head>包含关于文档的元信息。 -
<title>指定页面的标题(显示在浏览器的标题栏中)。 -
<body>定义文档的正文,其中包含可见内容。 -
<h1>定义一个大标题。 -
<p>定义一个段落。
在Codepen中查看代码效果:

HTML元素
HTML使用“元素”来构建内容结构。以下是一些常见的HTML元素:

让我们看看一些实际的例子:
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><title>我的第一个网页</title>
</head><h1>我最喜欢的动物</h1><p>以下是我最喜欢的三种动物:</p><ol><li>猫</li><li>狗</li><li>昆</li></ol><p>了解更多关于<a href="https://www.baidu.com">动物</a>的信息。</p></html>
这段代码创建了一个标题、一个段落、一个动物的有序列表和一个指向百度的链接,以了解更多关于动物的信息。效果如下:

网络浏览器就像是HTML的翻译。它们读取HTML代码并将其渲染成我们看到的视觉网页。不同的浏览器可能会稍微不同地渲染相同的HTML,这就是为什么要在多个浏览器上测试你
HTML标签、属性和元素
HTML由三个关键组件组成:
-
标签:这些是HTML的构建块。它们总是被包含在尖括号中,比如
<p>代表段落。 -
属性:这些提供了关于元素的额外信息。它们总是在开始标签中指定。
-
元素:一个元素是从开始标签到结束标签的所有内容
如上述代码中提到的例子:
<a href="https://www.baidu.com" title="访问百度">动物</a>
在这个例子中:
-
<a>是标签(代表超链接) -
href和title是属性 -
整行是一个元素
基本HTML结构
下面是一个代码片段,展示你可能在这些编辑器之一中设置的基本HTML结构:
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>我惊人的网站</title><link rel="stylesheet" href="styles.css">
</head><body><header><h1>欢迎来到我惊人的网站</h1><nav><ul><li><a href="#home">首页</a></li><li><a href="#about">关于</a></li><li><a href="#contact">联系方式</a></li></ul></nav></header><main> <section id="home"><h2>首页</h2><p>欢迎来到我的网站!随意探索。</p></section><!-- 更多部分将在这里 --></main><footer><p>© 2023 我惊人的网站。保留所有权利。</p></footer><script src="script.js"></script>
</body></html>
这段代码为网站设置了一个基本结构,包括页头、导航菜单、主要内容区域和页脚。
<nav>是 HTML5 引入的语义化标签,用于定义页面的导航部分。

HTML基础标签
现在,让我们探索一些最常用的HTML标签。我会为每个标签提供示例和解释。
1. 标题
HTML提供了六级标题,从 <h1>到 <h6>。
<h1>这是一个主标题</h1> <h2>这是一个次要标题</h2> <h3>这是一个三级标题</h3>
这些标签不仅使文本变大,还帮助搜索引擎理解你的内容结构。把它们想象成书中的章节标题!

2. 段落
标签用于定义段落。
<p>这是一个段落。它可以包含多个句子,甚至在你HTML代码中跨越多行,但在浏览器中会显示为单一的文本块。</p>
小贴士:总是使用 <p> 标签来定义段落,而不仅仅是用于间距。这有助于提高可访问性和SEO!效果:

3. 链接
链接是使用 <a>(锚点)标签创建的。
<a href="https://www.example.com">点击这里访问Example.com</a>
href 属性指定了链接所指向的页面URL链接就像是网站中的门——它们使用户可以从一个页面导航到另一个页面!
效果:

4. 图像
图像是通过 <img> 标签插入的。
<img src="cat.jpg" alt="一只可爱的小猫坐在窗台上">
src 属性指定了图像文件的路径,而 alt 提供了屏幕阅读器使用或图像加载失败时的替代文本。总是包含描述性的替代文本——这就像是给你们的图像一个声音!

5. 列表
HTML支持有序(编号)列表和无序列表(项目符号)。
无序列表:
<ul>
<li>苹果</li>
<li>香蕉</li>
<li>樱桃</li>
</ul>

有序列表:
<ol>
<li>起床</li>
<li>刷牙</li>
<li>吃早餐</li>
</ol>
列表非常适合组织信息。

6. 强调和重要
使用 <em> 来强调(通常显示为斜体),使用 <strong> 来表示重要(通常显示为粗体)。
<p>我<em>真的</em>喜欢HTML。这对于网页开发是<strong>至关重要</strong>的!</p>

7. 换行和水平线
有时你需要添加一个换行而不开始一个新的段落。这时 <br> 就派上用场了:
<p>玫瑰是红的,<br>紫罗兰是蓝的,<br>HTML很棒,<br>你也是!</p>

要添加一条水平线,使用 <hr> 标签:
<p>玫瑰是红的,<br>紫罗兰是蓝的,<hr><br>HTML很棒,<br>你也是!</p>
把 <br> 想象成键盘上的软回车,而 <hr> 就像是在纸上画一条线来分隔部分。

强制性结束标签
大多数HTML元素都需要一个开始标签和一个结束标签。然而,有些元素是自闭合的。这些元素通常不包含任何内容。下面是一个表格,列出了一些常见元素以及它们是否需要结束标签:

HTML 属性
HTML 属性是用于调整 HTML 元素行为或显示的标记语言的一部分。它总是包含在元素的开始标签中,通常由一个名称和一个值组成。让我们看看一些实际的例子,以更好地理解属性是如何工作的:
1. href 属性
<a href="https://www.example.com">访问 Example.com</a>
在这个例子中,href 是属性。它告诉浏览器点击链接时应该去哪里。
2. src 属性
<img src="cute-puppy.jpg" alt="一只可爱的狗狗">
在这里,有两个属性:
-
src:指定图像文件的路径。 -
alt:如果图像无法显示,提供替代文本。
3. style 属性
<p style="color: blue; font-size: 16px;">这是一个蓝色的段落。</p>

style 属性允许我们直接向元素添加 CSS。
HTML 全局属性
全局属性可以用于任何 HTML 元素。让我们看看一些最常见的内容:
| 属性 | 描述 | 示例 |
|---|---|---|
| class | 为元素指定一个或多个类名 | <div class="header"> |
| id | 为元素指定一个唯一的 ID | <p id="intro"> |
| style | 为元素指定一个内联 CSS 样式 | <p style="color:blue;"> |
| title | 为元素指定额外信息 | <abbr title="世界卫生组织">WHO</abbr> |
此时有以下例子:
<a href="https://www.example.com" target="_blank" title="访问 Example.com">点击我!</a>
在这个例子中,我们使用了三个属性:
-
href:指定链接去的页面的 URL。 -
target:指定在哪里打开链接的文档。 -
title:提供关于链接的额外信息。
通用属性
通用属性是可以用于大多数(但不是全部)HTML 元素的属性。它们不像全局属性那样通用,但仍然非常灵活。以下是一些例子:
| 属性 | 描述 | 示例 |
|---|---|---|
| onclick | 指定当元素被点击时运行的脚本 | <button onclick="alert('你好!')">点击我</button> |
| tabindex | 指定元素的键盘导航顺序 | <input type="text" tabindex="1"> |
| accesskey | 指定激活/聚焦元素的快捷键 | <a href="/" accesskey="h">首页</a> |

HTML - 块级和内联元素
块级元素
想象我们正在用积木建造一座房子,其中一些积木很大,独自占据了一整行。这些就像是HTML中的块级元素。它们从新的一行开始,并占据全部可用的宽度。
常见的块级元素:
<div>我是一个块级元素</div>
<p>我也是一个块级元素</p>
<h1>我也是一个标题,同时也是块级元素!</h1>
运行这段代码时,每个元素都会出现在新的一行上。

下面是一些常见块级元素的表格:

内联元素
现在,让我们想象一下那些可以并排放在同一行上的积木部件。这些就像是HTML中的内联元素。它们只占据必要的宽度,并且不会从新的一行开始。
这里有一个例子:
<span>我是一个内联元素</span>
<a href="#">我是一个链接,同时也是内联的</a>
<strong>我是加粗的,也是内联的!</strong>
这些元素都会出现在同一行上(如果有足够的空间)。
下面是一些常见内联元素的表格:


使用 <span> 标签分组
<span> 标签就像是一个小而透明的容器,你可以用来分组内联元素,甚至是在块级元素内的文本部分。
这里有一个例子:
<p>
我喜欢 <span style="color: blue;">蓝色</span> 和
<span style="color: green;">绿色</span> 颜色。
</p>

在这个例子中,我们使用了 <span> 来将不同的颜色应用到段落中的特定单词。
记住,<div> 是用来分组块级元素(或创建块级分组)的,而 <span> 是用来分组内联元素或文本部分的。
Iframe:通往其他世界的窗口
Iframe,全称“inline frame”,是一个HTML元素,允许你在当前HTML文档中嵌入另一个HTML文档。它就像在网页上创建了一个小窗口,展示了互联网上其他地方的内容。
语法
Iframe的基本语法出奇地简单:
<iframe src="URL"></iframe>
在这里,src是一个属性,用于指定你想嵌入的页面的URL。
iframes的示例
让我们通过一些实际示例来更好地理解iframes。
1. 基础Iframe
<iframe src="http://www.bilibili.com" height="1000" width="800"></iframe>
这段代码将嵌入"url"的内容到你的网页中。

我们设置了一个宽为800,高为1000显示文档为b站(也可以选择本地html文档)的内联框架。
如果我们把链接换成www.baidu.com, 就会受到策略限制,无法正常显示:

这是因为百度使用了 X-Frame-Options 响应头来限制其在 iframe 中的嵌套。X-Frame-Options 是一种安全策略,可以由网站的服务器设置,用于控制页面是否允许在 iframe 中嵌套。当网站设置了 X-Frame-Options 为 DENY 或 SAMEORIGIN,浏览器将不允许将该页面在 iframe 中加载,以防止点击劫持等安全问题。
除此之外iframe的使用有其他需要注意的地方,可以参考如下文章:
https://juejin.cn/post/7261808673035075643
表单:交互式网页的门户
HTML表单的功能
想象你在一个咖啡店里,你想点你最喜欢的拿铁。你需要告诉咖啡师你想要什么,对吧?HTML表单就像是这种对话的数字版本。它们允许用户输入信息并将其发送到网页服务器进行处理。
表单是网页上用户交互的支柱。它们用于:
-
收集用户数据(如订阅新闻通讯)
-
登录网站
-
搜索信息
-
进行在线购买
-
提交反馈或评论
没有表单,网页将是一个相当无聊的单向信息通道。表单使网页变得交互和动态!
创建表单
让我们创建一个基本的HTML表单
<form action="/submit-form" method="post">
<label for="name">姓名:</label>
<input type="text" id="name" name="name" required><label for="email">电子邮件:</label>
<input type="email" id="email" name="email" required><input type="submit" value="提交">
</form>
![]()
让我们分解一下:
-
<form>标签是我们所有表单元素的容器。 -
action="/submit-form"告诉浏览器在表单提交时将数据发送到哪里。 -
method="post"指定如何发送数据(在这个例子中,数据以HTTP POST请求的形式发送)。 -
<label>标签为我们的输入字段提供描述。 -
<input>标签创建实际的输入字段。 -
<input>中的type属性指定输入的类型(文本、电子邮件等)。 -
required属性使字段成为必填项。 -
最后一个
<input>的type="submit"创建了一个提交按钮。
一个简单的搜索表单
<form action="/search" method="get">
<input type="text" name="query" placeholder="搜索...">
<input type="submit" value="搜索">
</form>
这个表单创建了一个简单的搜索框和一个提交按钮。当用户输入查询并点击“搜索”时,它会发送一个GET请求到“/search”,并将查询作为参数。
![]()
一个联系表单
<form action="/search" method="get">
<input type="text" name="query" placeholder="搜索...">
<input type="submit" value="搜索">
</form>
这个表单包括一个文本区域,用于撰写较长的消息,非常适合联系页面!

HTML表单元素
表单不仅仅只是文本输入。有一整套工具箱中的元素可以用来创建丰富、交互式的表单。让我们探索一些:

每个元素都有自己独特的属性和用例。随着你在网页开发旅程中的进步,你将发现自己会在创造性的组合中使用这些元素来构建复杂且用户友好的表单。
HTML表单属性
属性就像是我们给表单元素的特殊指令。它们帮助控制表单的行为以及它与用户的交互。以下是一些重要的属性:

当正确使用时,这些属性可以非常强大。例如,在包含敏感信息的表单上设置 autocomplete="off" 可以通过防止浏览器存储输入数据来增强安全性。
HTML表单示例代码
现在,让我们将所有内容放在一起,展示一个比较复杂的注册表单示例:
<form action="/register" method="post">
<fieldset>
<legend>个人信息</legend><label for="fullname">全名:</label>
<input type="text" id="fullname" name="fullname" required><label for="email">电子邮件:</label>
<input type="email" id="email" name="email" required><label for="birthdate">出生日期:</label>
<input type="date" id="birthdate" name="birthdate"><label for="gender">性别:</label>
<select id="gender" name="gender">
<option value="">选择...</option>
<option value="male">男性</option>
<option value="female">女性</option>
<option value="other">其他</option>
</select>
</fieldset><fieldset>
<legend>账户详情</legend><label for="username">用户名:</label>
<input type="text" id="username" name="username" required><label for="password">密码:</label>
<input type="password" id="password" name="password" required><label for="confirmpassword">确认密码:</label>
<input type="password" id="confirmpassword" name="confirmpassword" required>
</fieldset><fieldset>
<legend>偏好设置</legend><label>
<input type="checkbox" name="newsletter" value="yes"> 订阅新闻通讯
</label><p>喜欢的颜色:</p>
<label>
<input type="radio" name="color" value="red"> 红色
</label>
<label>
<input type="radio" name="color" value="blue"> 蓝色
</label>
<label>
<input type="radio" name="color" value="green"> 绿色
</label>
</fieldset><input type="submit" value="注册">
</form>
这个表单展示了我们讨论的各种表单元素和属性的使用。它被组织成三个字段集:个人信息、账户详情和偏好设置。每个字段集将相关的输入分组,使表单更加有序且易于理解。

HTML表单是如何工作的?
现在我们已经创建了我们的表单,当我点击那个提交按钮时会发生如下过程:
-
用户输入:用户填写表单字段中的信息。
-
验证:如果我们设置了客户端验证(使用HTML5属性如
required或JavaScript),浏览器会在继续之前检查输入是否有效。 -
提交:当用户点击提交按钮时,浏览器收集所有表单数据。
-
请求:浏览器创建一个HTTP请求(GET或POST,取决于
method属性),并将其发送到action属性指定的URL。 -
服务器处理:服务器接收到请求并处理数据(这部分涉及到服务器端编程,超出了本HTML教程的范围)。
-
响应:服务器将响应发送回浏览器,这可能是新页面、重定向或成功/错误消息。
-
浏览器行为:浏览器根据响应采取行动,通常是通过加载新页面或更新当前页面。
相关文章:
Web基础:HTML快速入门
HTML基础语法 HTML(超文本标记语言) 是用于创建网页内容的 标记语言,通过定义页面的 结构和内容 来告诉浏览器如何呈现网页。 超文本(Hypertext) 是一种通过 链接(Hyperlinks) 将不同文本、图像…...
学习一下Qt中的分裂器以及为什么要使用分裂器?
关于分裂器的使用和内容这篇文章写的很详细了[QT_043]Qt学习之分裂器(QSplitter)-CSDN博客 我就说一下为什么已经有布局器要还使用分裂器 在 Qt 中,布局时使用分裂器(QSplitter)主要有以下几个方面的好处ÿ…...
Xshell链接Linux机器更换jdk版本
都25年了,不会还有人在用 jdk1.8 吧? 那么问题来了,如果公司让你更新机器上的jdk版本,你又刚好是一个小白没操作过,怎么办?别急,步骤这就奉上~ 编辑 .bashrc 或 .zshrc 配置文件: 如果你使用的…...
2025.3.3总结
周一这天,我约了绩效教练,主要想了解专业类绩效的考核方式以及想知道如何拿到一个更好的绩效。其他的岗位并不是很清楚,但是专业类的岗位,目前采取绝对考核,管理层和专家岗采取相对考核,有末尾淘汰。 通过…...
如何应用大模型 — 大模型使用范式
从OpenAI发布ChatGPT开始,大模型就开始受到大家关注,到DeepSeek-R1出现,大家的关注达到了顶峰,越来越多的企业,机构,学校,政府部门希望接入大模型,希望通过大模型来提升效率…...
DeepSeek本机部署(基于Ollama和Docker管理)
目录 一、ollama 与 docker 简介 (一)ollama(Ollama) (二)docker 二、利用 ollama 和 docker 配置 deepseek-r1 的准备工作 (一)硬件需求 (二)软件安装 三、配置 deepseek-r1…...
C++复试笔记(一)
Setw 是C中用于设置输出字段宽度的函数。当使用 setw(3) 时,它会设置紧接着的输出字段的最小宽度为3个字符。如果字段内容长度小于3,则会在左侧填充空格以达到指定宽度;如果内容长度大于或等于3,则全部内容将被输出,…...
如何让一个类作为可调用对象被thread调用?
如何让一个类作为可调用对象,被 std::thread 调用 在 C 中,可以让一个类对象作为可调用对象(Callable Object),然后用 std::thread 进行调用。要实现这一点,主要有三种方法: 重载 operator()&…...
学习小程序开发--Day1
项目学习开篇 项目架构 项目进程 创建uni-app项目 通过HBuilderX创建 小结 page.json 和 tabBar 目录文件 pages.json的配置...
“量子心灵AI“的监控仪表盘 - javascript网页设计案例
【前端实战】基于Three.js和Chart.js打造未来科技风AI监控仪表盘 本文通过AI辅助开发,详细记录了一个高级前端项目的完整实现过程。文章包含核心代码片段、技术要点及遇到的问题与解决方案。适合有一定前端基础的开发者学习参考。 1. 项目概述 本文详细介绍了一个名…...
Redis 中 string 和 list 的原理说明
Redis 中 string 和 list 的底层实现 Redis有5种基础数据结构,对应的value分别为:string (字符串)、list (列表)、set (集合)、hash (哈希) 和 zset (有序集合) Redis 对象头结构体: struct RedisObject {int4 type; // 4bits 对象的基本类型…...
JVM常用概念之String.intern()
问题 String.intern()的工作原理?我们应该如何使用它? 基础知识 字符串池(String Pool) String类在我们日常编程工作中是使用频率非常高的一种对象类型。JVM为了提升性能和减少内存开销,避免字符串的重复创建,其维…...
DeepLabv3+改进6:在主干网络中添加SegNext_Attention|助力涨点
🔥【DeepLabv3+改进专栏!探索语义分割新高度】 🌟 你是否在为图像分割的精度与效率发愁? 📢 本专栏重磅推出: ✅ 独家改进策略:融合注意力机制、轻量化设计与多尺度优化 ✅ 即插即用模块:ASPP+升级、解码器 PS:订阅专栏提供完整代码 目录 论文简介 步骤一 步骤二…...
亚信安全发布2024威胁年报和2025威胁预测
在当今数字化时代,网络空间已成为全球经济、社会和国家安全的核心基础设施。随着信息技术的飞速发展,网络连接了全球数十亿用户,推动了数字经济的蓬勃发展,同时也带来了前所未有的安全挑战。2024年,网络安全形势愈发复…...
深入理解 DOM 元素
深入理解 DOM 元素:构建动态网页的基石 在网页开发的世界里,DOM(Document Object Model,文档对象模型)元素宛如一座桥梁,连接着静态的 HTML 结构与动态的 JavaScript 交互逻辑。它让原本呆板的网页变得鲜活…...
[数据分享第七弹]全球洪水相关数据集
洪水是一种常见的自然灾害,在全球范围内造成了极为严重的威胁。近年来,针对洪水事件的检测分析,以及对于洪水灾害和灾后恢复能力的研究日渐增多,也产生了众多洪水数据集。今天,我们一起来收集整理一下相关数据集。&…...
SpringBoot POST和GET请求
1. 什么是 HTTP 请求? HTTP 协议:超文本传输协议,用于客户端和服务器之间的通信。 常见 HTTP 方法: GET:获取资源POST:提交数据PUT:更新资源DELETE:删除资源 2. GET 请求详解 作…...
MySQL 面试篇
MySQL相关面试题 定位慢查询 **面试官:**MySQL中,如何定位慢查询? 我们当时做压测的时候有的接口非常的慢,接口的响应时间超过了2秒以上,因为我们当时的系统部署了运维的监控系统Skywalking ,在展示的报表中可以看到…...
【Andrej Karpathy 神经网络从Zero到Hero】--2.语言模型的两种实现方式 (Bigram 和 神经网络)
目录 统计 Bigram 语言模型质量评价方法 神经网络语言模型 【系列笔记】 【Andrej Karpathy 神经网络从Zero到Hero】–1. 自动微分autograd实践要点 本文主要参考 大神Andrej Karpathy 大模型讲座 | 构建makemore 系列之一:讲解语言建模的明确入门,演示…...
Android MVC、MVP、MVVM三种架构的介绍和使用。
写在前面:现在随便出去面试Android APP相关的工作,面试官基本上都会提问APP架构相关的问题,用Java、kotlin写APP的话,其实就三种架构MVC、MVP、MVVM,MVC和MVP高度相似,区别不大,MVVM则不同&…...
python使用django搭建图书管理系统
大家好,你们喜欢的梦幻编织者回来了 随着计算机网络和信息技术的不断发展,人类信息交流的方式从根本上发生了改变,计算机技术、信息化技术在各个领域都得到了广泛的应用。图书馆的规模和数量都在迅速增长,馆内藏书也越来越多,管理…...
JavaScript系列06-深入理解 JavaScript 事件系统:从原生事件到 React 合成事件
JavaScript 事件系统是构建交互式 Web 应用的核心。本文从原生 DOM 事件到 React 的合成事件,内容涵盖: JavaScript 事件基础:事件类型、事件注册、事件对象事件传播机制:捕获、目标和冒泡阶段高级事件技术:事件委托、…...
大话机器学习三大门派:监督、无监督与强化学习
以武侠江湖为隐喻,系统阐述了机器学习的三大范式:监督学习(少林派)凭借标注数据精准建模,擅长图像分类等预测任务;无监督学习(逍遥派)通过数据自组织发现隐藏规律,…...
win11编译llama_cpp_python cuda128 RTX30/40/50版本
Geforce 50xx系显卡最低支持cuda128,llama_cpp_python官方源只有cpu版本,没有cuda版本,所以自己基于0.3.5版本源码编译一个RTX 30xx/40xx/50xx版本。 1. 前置条件 1. 访问https://developer.download.nvidia.cn/compute/cuda/12.8.0/local_…...
FY-3D MWRI亮温绘制
1、FY-3D MWRI介绍 风云三号气象卫星(FY-3)是我国自行研制的第二代极轨气象卫星,其有效载荷覆 盖了紫外、可见光、红外、微波等频段,其目标是实现全球全天候、多光谱、三维定量 探测,为中期数值天气预报提供卫星观测数…...
Codeforces1929F Sasha and the Wedding Binary Search Tree
目录 tags中文题面输入格式输出格式样例输入样例输出说明 思路代码 tags 组合数 二叉搜索树 中文题面 定义一棵二叉搜索树满足,点有点权,左儿子的点权 ≤ \leq ≤ 根节点的点权,右儿子的点权 ≥ \geq ≥ 根节点的点权。 现在给定一棵 …...
HBuilder X 使用 TortoiseSVN 设置快捷键方法
HBuilder X 使用 TortoiseSVN 设置快捷键方法 单文件:(上锁,解锁,提交,更新) 安装好 TortoiseSVN ,或者 按图操作: 1,工具栏中 【自定义快捷键】 2,点击 默认的快捷键设置&…...
Java jar包后台运行方式详解
目录 一、打包成 jar 文件二、后台运行 jar 文件三、示例四、总结在 Java 开发中,我们经常需要将应用程序打包成可执行的 jar 文件,并在后台运行。这种方式对于部署长时间运行的任务或需要持续监听事件的应用程序非常重要。本文将详细介绍如何实现 Java jar 包的后台运行,并…...
Refreshtoken 前端 安全 前端安全方面
网络安全 前端不需要过硬的网络安全方面的知识,但是能够了解大多数的网络安全,并且可以进行简单的防御前两三个是需要的 介绍一下常见的安全问题,解决方式,和小的Demo,希望大家喜欢 网络安全汇总 XSSCSRF点击劫持SQL注入OS注入请求劫持DDOS 在我看来,前端可以了解并且防御前…...
Mysql5.7-yum安装和更改mysql数据存放路径-2020年记录
记录下官网里用yum rpm源安装mysql, 1 官网下载rpm https://dev.mysql.com/downloads/repo/yum/ https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html(附官网操作手册) wget https://repo.mysql.com//mysql80-community-release…...
