当前位置: 首页 > article >正文

8 编程笔记全攻略:Markdown 语法精讲、Typora 编辑器全指南(含安装激活、基础配置、快捷键详解、使用技巧)

1 妙笔在手,编程无忧!

1.1 编程为啥要做笔记?这答案绝了!

        嘿,各位键盘魔法师!学编程不记笔记,就像吃火锅不配冰可乐 —— 爽到一半直接噎住!你以为自己脑子是顶配 SSD,结果 debug 时连变量名都写成 "a1a2a3" ?别慌!笔记就是你的 "代码防丢符",专治各种 "昨天我写了啥" 的失忆症!

        做笔记的三大神效:

  • 🔥 BUG 克星:报错原因 + 解决方案写成 "避坑宝典",下次遇到同类问题直接 Ctrl + C,效率开挂!
  • 🔥 灵感存钱罐:零散思路秒变 "代码模块库",复用率堪比老干妈 —— 万物皆可蘸!
  • 🔥 职场护身符:注释清晰到让同事想给你磕头,离职时还能把笔记当 "传家宝" 留给接盘侠~

1.2 多种笔记形式的对比

        在编程学习中,我们可选择的笔记形式多种多样,每种形式都有其独特的优势与局限。

  • 纸质笔记:
    • 优点:手感真实,书写流畅,有助于深度思考。
    • 缺点:携带不便,查找困难,难以进行大规模整理与分享,长时间书写易疲劳。
  • 电子版笔记(Word、TXT、Markdown):
    • Word:功能强大,格式丰富,但文件体积大,跨平台兼容性一般。
    • TXT:纯文本格式,简单轻便,但缺乏格式支持,可读性较差。
    • Markdown:轻量级标记语言,易于学习,格式简洁美观,但原生不支持复杂排版,且不同编辑器间可能存在渲染差异。不过,对于编程笔记而言,Markdown 的简洁性与代码高亮功能已足够强大
    • 共同缺点:相较于云笔记和博客,这些形式在随时修改与多端查看上略显不便。
  • 云笔记(有道云笔记、语雀等):
    • 优点:支持多端同步,便于随时随地记录与查看;提供丰富的模板与协作功能。
    • 缺点:免费空间有限,超出后需付费;部分高级功能需订阅会员。
  • 博客(CSDN、51CTO、博客园、简书、掘金):
    • 优点:
      • 跨平台性:无论身处何地,只要有网络,就能访问自己的博客
      • 多设备可查看:手机、平板、电脑,随时随地回顾笔记
      • 分享与交流:博客是公开的平台,便于与他人分享知识,参与讨论
      • SEO 优化:优质内容易被搜索引擎收录,提升个人影响力
    • 推荐理由:特别是 CSDN,作为国内领先的 IT 社区,拥有庞大的用户群体与丰富的资源,是编程学习者分享与交流的理想之地。

2  Markdown 核心教程

2.1 Markdown 简介

        Markdown 是一种轻量级标记语言,它支持人们以易读易写的纯文本格式编写文档,随后可转换为有效的 XHTML(或 HTML)文档。对于编程学习者来说,Markdown 具备诸多极具吸引力的特性:

  • 简洁易上手:基本语法简单直观,短时间内即可快速掌握。
  • 代码高亮:能够支持多种编程语言的代码高亮显示,使代码笔记更加清晰、易读。
  • 格式多样:尽管简洁,但 Markdown 也支持标题、列表、链接、图片等多种格式,完全能满足日常笔记需求。
  • 跨平台通用:几乎所有的文本编辑器和 IDE 都支持 Markdown 格式,而且许多网站(如 GitHub、CSDN 等)也直接支持 Markdown 编辑与预览。

2.2 Markdown 语法精讲

        在了解多种笔记形式并认识 Markdown 笔记后,相信大家对 Markdown 这个简洁且功能强大的工具产生了浓厚兴趣。接下来,让我们一同深入 Markdown 的语法世界,从基础的标题语法开始,逐步掌握这个 “笔记利器” 的核心要点。

        这里,我们选择 VS Code 作为 “得力助手”,带领大家一起撰写 Markdown 笔记,亲身感受它的独特魅力。VS Code 作为一款功能强大的代码编辑器,为 Markdown 提供了出色的支持。它具备语法高亮显示功能,让 Markdown 代码清晰易辨;还有实时预览功能,让我们在编写笔记时,能随时查看最终的呈现效果。有了这些功能的助力,我们编写 Markdown 笔记的效率将大幅提升,整个过程也会更加轻松愉悦。

2.2.1 标题

        首先,启动 VS Code,新建一个名为 “Markdown笔记演示” 的文件夹,接着在该文件夹内创建一个名为 “标题” 的 Markdown 文件,文件后缀为 “.md”,即 “标题.md”,操作示例如下:

        之后,我们开启 VS Code 的实时预览功能,这样在编写笔记的过程中,就能随时查看最终的呈现效果,具体展示如下:

        Markdown 提供了简单且直观的方式来创建标题,通过使用不同数量的 “#” 符号来定义不同级别的标题,最多支持六级标题。以下是详细的说明和示例:

注意事项: 

  • “#” 符号与标题内容之间需要有一个空格,否则 Markdown 无法正确识别为标题。
  • 标题内容可以是任意文本,但建议简洁明了,能够准确概括该部分内容的主题。
  • 在实际编写文档时,应根据文档结构和内容层次合理选择标题级别,避免标题级别混乱,影响文档的可读性。

2.2.2 代码块

        Markdown 中使用成对的三个反引号(``` ```,位于 Tab 键上方)来创建代码块。将代码放在成对的三个反引号之间,就可以形成一个独立的代码块。

        为了让代码更具可读性,Markdown 允许在开头的三个反引号后面指定编程语言,从而实现代码高亮。不同的编程语言有不同的高亮规则,这样可以让代码中的关键字、变量、注释等以不同的颜色显示。

        如果你只需要在文本中插入一小段代码,可以使用行内代码语法。行内代码使用一对反引号(` `)将代码包裹起来

注意事项: 

  • 确保三个反引号是成对出现的,否则代码块可能无法正常显示。
  • 指定编程语言名称时,要确保拼写正确,否则代码高亮可能无法生效。
  • 行内代码适用于简短的代码片段,如果代码较长或需要格式化显示,建议使用代码块。

2.2.3 列表

无序列表:

        无序列表使用 -(减号)、+(加号)或 *(星号)作为列表项的前缀,后面紧跟一个空格,然后输入列表项的内容

        各个列表项之间没有顺序之分,独占一行。

        可以通过在列表项中再次使用有序或无序列表语法来创建嵌套列表,实现多级列表的展示。

有序列表:

        有序列表使用数字 1 到 n,后面紧跟一个英文句号 . 和一个空格,然后输入列表项的内容

        各个列表项之间有明确的顺序,独占一行。

        虽然 Markdown 会根据列表项的顺序自动编号,但建议按照自然顺序编写数字,以提高代码的可读性。

        同样,可以在有序列表项中再次使用有序或无序列表语法来创建嵌套列表,实现多级列表的展示。

嵌套列表:

        有序列表和无序列表可以相互嵌套使用。

注意事项: 

  • 列表项的前缀(如 -、+、*、数字 .)与列表项内容之间必须有一个空格,否则 Markdown 无法正确识别为列表。
  • 列表项之间的空行不会影响列表的显示,但建议在列表项之间保持适当的空行,以提高代码的可读性。
  • 嵌套列表的缩进建议使用两个或四个空格,以保持代码的一致性和可读性。

2.2.4 文本样式

        强调(斜体):使用星号 * 或下划线 _ 包围文本

        加粗:使用两个星号 ** 或两个下划线 __ 包围文本

        加粗且斜体:使用三个星号 *** 或三个下划线 ___ 包围文本(或使用组合如 **_ 或 _**,但 *** 更常见)

        删除线:使用两个波浪号 ~~ 包围文本

        引用:在文本前添加一个大于号 >

        换行:如果需要确保跨平台兼容性,建议使用两个空格 + 回车或 <br> 标签来实现换行

2.2.5 分割线

        使用三个或更多的星号 ***、减号 --- 或下划线 ___

2.2.6 图片

        Markdown 使用以下语法来插入图片:

![图片描述](图片路径)
  • 图片描述:这是图片的替代文本(alt text),在图片无法加载时显示,也有助于提高可访问性。
  • 图片路径:可以是本地相对路径或网络链接

注意事项:

  1. 本地图片
    • 确保图片路径正确,与 Markdown 文件相对位置一致
    • 图片文件需完整且未被删除,否则无法显示
    • 渲染器可能不支持本地路径(如 GitHub),需提前确认。
  2. 网络图片
    • 确保图片 URL 正确且可访问,优先使用 HTTPS 协议
    • 考虑图片链接的稳定性,避免使用易失效的链接。
    • 遵守版权规定,使用合法图片资源。

2.2.7 超链接

        在 Markdown 中,超链接用于创建指向其他网页、文件或资源的可点击链接。Markdown 使用以下语法来创建超链接:

[链接文本](链接地址)
  • 链接文本:这是用户看到的可点击文本
  • 链接地址:这是点击链接文本后要访问的 URL 或路径


3 Typora 的安装与配置

3.1 Typora 简介

        Typora 是一款全球公认的优秀 Markdown 编辑器,以其简洁的界面、实时预览功能和强大的扩展性著称。与 VS Code 等需要分屏预览的编辑器不同,Typora 实现了所见即所得(WYSIWYG)的编辑体验,无需切换预览模式,极大提升了笔记编写的流畅度。其丰富的自定义选项和主题支持,使其成为撰写 Markdown 笔记的首选工具。

3.2 Typora 安装流程

        你可以通过访问 Typora 的官方网站: https://www.typora.net/ 下载适合你操作系统(Windows/macOS/Linux)的版本:

        此外,你还可以选择通过博主分享的网盘链接(https://pan.baidu.com/s/12pImL7DSy09h_Wrret568Q?pwd=n857)下载所需文件。下载并解压该资料包后,在 “软件安装包” 文件夹内,有一个名为 “Typora激活资源” 的文件夹,其中存放着 Typora 软件的安装包,如在所示:

        软件安装包下载完成后,只需双击名为 “typora-setup-x64-1.2.4.exe” 的安装文件即可开始安装,操作示例如下:

        接下来,选定软件的安装路径:

        你可以选择是否勾选创建桌面图标的选项:

        最后,点击 “Install” 按钮即可完成安装。

3.3 Typora 激活流程

        在成功安装 Typora 软件后,请先将其关闭,随后关闭电脑上运行的所有杀毒软件。 

        接下来,请将《Typora激活资源》文件夹中的 app.asar 文件,复制到 Typora 软件的安装路径下的 resources 文件夹中,并替换掉原有的 app.asar 文件,操作如下所示:

        而后,点击 “替换目标中的文件” 选项以完成替换操作。

        之后,重新启动 Typora 软件,并在相应界面点击 “输入序列号” 选项。

        在注册界面中,请输入以下邮箱地址和授权码:

邮箱:xiajierluantian@163.com (随便写)
授权码: E8Q9Y5-KXMTL5-7578SL-4S5XKS

        完成上述步骤后,Typora 软件即安装并激活成功。但请注意,此操作仅供学习交流使用,强烈建议你支持正版软件,以确保获得合法的使用权益及优质的技术支持。

3.4 Typora 基础配置

        在 Typora 软件中,通过点击菜单栏的 “文件” 选项,然后选择 “偏好设置”,即可进入软件配置界面。

3.4.1 通用配置

        首先,建议关闭软件的自动更新功能,以避免不必要的干扰。至于其他通用配置选项,如启动时的默认行为(例如选择 “打开新文件” 等),则可根据个人使用习惯进行自由设置。

3.4.2 编辑器配置

        在 Typora 编辑器中,你可以根据自己的写作习惯对编辑器进行相应的配置。以下是一些具体的配置建议,特别是关于缩进字符、成对符号匹配等方面的设置:

1. 配置默认缩进字符

  • 缩进级别:在 “编辑器” 设置中的 “默认缩进” 部分,你可以设置默认的缩进级别。你可以选择 2 个、3 个、4 个空格或其他你喜欢的缩进单位。这有助于你在编写列表、代码块或引用时保持一致的缩进风格。

2. 设置成对符号匹配

  • 匹配括号和引号:在 “使用成对的符号” 部分,勾选 “匹配括号和引号” 选项。这样,当你输入左括号或左引号时,Typora 会自动为你匹配右括号或右引号,提高输入效率。

  • 匹配 Markdown 字符:同样地,勾选 “匹配 Markdown 字符” 选项。这意味着当你输入 Markdown 特定字符(如星号用于加粗或斜体)时,Typora 会自动为你匹配成对的字符,方便你快速应用 Markdown 格式

3. 其他编辑器配置建议

  • 即时渲染:如果你希望实时查看 Markdown 渲染效果,可以在 “即时渲染” 部分选择不勾选 “显示当前块元素的 Markdown 源码”。这样,Typora 会即时渲染你的 Markdown 内容,让你更直观地看到最终效果。

  • 默认复制行为:在 “默认复制行为” 部分,你可以根据自己的需求选择复制纯文本时是否复制 Markdown 源码,以及复制或剪切时若没有文字被选中是否复制或剪切光标所在的一整行。

  • 默认换行符:根据你的操作系统选择默认的换行符。如果你使用的是 Unix/Linux 或 macOS 系统,选择 “LF (Unix Style)”;如果你使用的是 Windows 系统,选择 “CRLF (Windows Style)”。

  • 拼写检查:勾选 “自动检测语言” 选项,让 Typora 根据你输入的内容自动检测语言,并提供拼写检查功能。

  • 打字机模式:如果你喜欢始终将光标保持在屏幕中间进行写作,可以勾选 “在打字机模式下,始终保证光标在屏幕中间” 选项。

3.4.3 图像配置

1. 复制图片到指定文件夹

  • 复制图片到 ./${filename}.assets 文件夹:
    • 选择此选项后,当你将图片插入到 Typora 中时,图片会被复制到当前 Markdown 文件同目录下的 ${filename}.assets 文件夹中。${filename} 是你的 Markdown 文件名(不包括扩展名)
    • 这样做的好处是,你的图片文件会与 Markdown 文件一起被组织和管理,方便备份和迁移。
  • 无特殊操作:
    • 如果你不希望 Typora 对插入的图片进行任何特殊处理,可以选择此选项。图片将保持其原始位置,Typora 只会记录图片的路径。
  • 复制图片到当前文件夹:
    • 选择此选项后,图片会被复制到当前 Markdown 文件所在的文件夹中,而不是创建一个单独的 .assets 文件夹

2. 图片上传选项

  • 上传图片:
    • 如果你希望将图片上传到某个图床或云存储服务,可以选择此选项。然后,你需要配置上传服务的相关信息(如 API 密钥、上传 URL 等),这通常需要在 Typora 的高级设置或 YAML 前置事项中进行配置。
  • 对本地 / 网络位置的...应用上述规则:
    • 这两个选项允许你指定是否对本地图片和网络图片应用上述的复制或上传规则。

3. 优先使用相对路径

  • 勾选此选项后,Typora 会优先使用相对路径来引用图片。这意味着,如果你的图片文件和 Markdown 文件在同一个文件夹或子文件夹中,Typora 会使用相对路径来引用图片,而不是绝对路径。这样做的好处是,当你的文件被移动到其他位置时,图片引用仍然有效

4. 允许根据 YAML 设置自动上传图片

  • 勾选此选项后,你可以通过在 Markdown 文件的 YAML 前置事项中配置上传服务的信息,来自动上传插入的图片。这需要在 YAML 中指定上传服务的名称、API 密钥等相关信息。

5. 插入时自动转义图片 URL

  • 勾选此选项后,当你插入图片时,Typora 会自动对图片的 URL 进行转义。这通常是为了防止 URL 中的特殊字符(如空格、括号等)在 Markdown 渲染时出现问题。

3.4.4 Markdown 配置 

1. Markdown 语法偏好

  • 严格模式:如果你希望 Typora 严格遵循 Markdown 语法规范,可以勾选此选项。但如果你希望 Typora 在某些情况下更加宽容,可以不勾选。
  • 标题样式:选择你喜欢的标题样式,如 “atx (#)” 或 “无序列表”。
  • 无序列表和有序列表:确保这些选项已勾选,以便你可以轻松创建列表。

2. Markdown 扩展语法

  • 内联公式:如果你需要在 Markdown 中插入数学公式,可以勾选此选项,并熟悉 LaTeX 语法
  • 下标和上标:勾选这些选项,以便你可以轻松地在文本中使用下标和上标
  • 高亮:勾选此选项,以便你可以使用 ==key== 语法来高亮文本
  • 图表:如果你需要在 Markdown 中插入图表(如序列图、流程图和 Mermaid 图),可以勾选此选项,并学习相应的图表语法

3. 智能标点

  • 输入时转换:勾选此选项,以便 Typora 在你输入时自动转换引号、破折号等标点符号为智能标点。
  • 智能引号和智能破折号:确保这些选项已勾选,以获得更好的排版效果。
  • 解析 Markdown 时允许并转化 Unicode 标点:勾选此选项,以便 Typora 在解析 Markdown 时能够正确处理和转换 Unicode 标点。

4. 代码块

  • 显示行号:如果你希望在代码块中显示行号,可以勾选此选项
  • 代码块自动换行:根据个人喜好选择是否勾选。如果你希望代码块中的代码自动换行,可以勾选;否则,可以不勾选。
  • 代码缩进:设置你喜欢的代码缩进级别,如 4 个空格。

5. 公式

  • 自动添加序号:如果你希望在公式旁边自动添加序号,可以勾选此选项。
  • 支持使用 \newline 换行:勾选此选项,以便你可以在公式中使用 \newline 进行换行。
  • 启用 physics 包:如果你需要在公式中使用 physics 包的特性,可以勾选此选项。
  • 当复制或导出为无格式的 HTML 时:选择你喜欢的选项,如 “使用 SVG”,以确保公式在复制或导出时保持正确的格式。

3.5 Typora 快捷键

3.5.1 文件操作快捷键

快捷键功能描述
Ctrl + N新建文件
Ctrl + O打开文件
Ctrl + S保存文件
Ctrl + Shift + S另存为文件
Ctrl + W关闭当前文件

3.5.2 编辑操作快捷键 

快捷键功能描述
Ctrl + Z撤销上一步操作
Ctrl + Y重做上一步操作(部分系统为 Ctrl + Shift + Z)
Ctrl + X剪切选中文本
Ctrl + C复制选中文本
Ctrl + V粘贴剪贴板内容
Ctrl + A全选文本
Ctrl + L选中当前行/句
Ctrl + D选中相同格式的单词
Ctrl + E选中相同格式的文字

3.5.3 段落格式快捷键

快捷键功能描述
Ctrl + 1/2/3/4/5/6设置一级/二级/三级/四级/五级/六级标题
Ctrl + 0设置为普通段落
Ctrl + T插入表格
Ctrl + Shift + Q插入引用
Ctrl + Shift + [增加缩进(有序列表)
Ctrl + Shift + ]减少缩进(无序列表)

3.5.4 文本格式快捷键

快捷键功能描述
Ctrl + B加粗文本
Ctrl + I倾斜文本
Ctrl + U下划线文本
Alt + Shift + 5添加删除线

3.5.5 插入元素快捷键

功能描述
Ctrl + K插入超链接
Ctrl + Shift + I插入图片
Ctrl + Shift + K插入代码块

3.5.6 光标移动快捷键

快捷键功能描述
Ctrl + Home跳转到文章开头
Ctrl + End跳转到文章结尾
Ctrl + J跳转到所选内容

3.5.7 查找与替换快捷键

快捷键功能描述
Ctrl + F查找文本
Ctrl + H替换文本

3.5.8 视图切换快捷键

捷键功能描述
Ctrl + /切换源代码模式
F11切换全屏模式
Ctrl + Shift + L显示/隐藏侧边栏
Ctrl + Shift + 1打开大纲视图
Ctrl + Shift + 2打开文档列表视图
Ctrl + Shift + 3打开文件树视图

相关文章:

8 编程笔记全攻略:Markdown 语法精讲、Typora 编辑器全指南(含安装激活、基础配置、快捷键详解、使用技巧)

1 妙笔在手&#xff0c;编程无忧&#xff01; 1.1 编程为啥要做笔记&#xff1f;这答案绝了&#xff01; 嘿&#xff0c;各位键盘魔法师&#xff01;学编程不记笔记&#xff0c;就像吃火锅不配冰可乐 —— 爽到一半直接噎住&#xff01;你以为自己脑子是顶配 SSD&#xff0c;结…...

【MySQL】SQL语句在MySQL中的执行过程?主要存储引擎区别?

MySQL SQL语句执行过程详解 作为面试官&#xff0c;我来详细剖析一条SQL语句在MySQL中的完整执行过程&#xff0c;这是每个后端开发者都应该掌握的核心知识。 一、连接阶段 建立连接 客户端通过TCP/IP协议与MySQL服务器建立连接(默认3306端口)服务器验证用户名、密码和权限…...

Linux(autoDL云服务器)mamba-ssm环境安装——一次成功!

1.创建环境选择torch2.0&#xff0c; cuda11.8&#xff0c;python3.8 2.从GitHub官网下载cp38对应的&#xff0c;causl_conv1d&#xff0c;和mamba-ssm2.2.2。下载入下图所示。 3.直接用finalshell 或者xshell连接服务器上传&#xff0c;到根目录下面。 直接用pip install *…...

代码审计入门 原生态sql注入篇

前置知识&#xff1a; 漏洞形成的原因&#xff1a; 1、可控的参数 2、函数缺陷 代码审计的步骤&#xff1a; 1、全局使用正则搜索 漏洞函数 &#xff0c;然后根据函数看变量是否可控&#xff0c;再看函数是否有过滤 2、根据web的功能点寻找函数&#xff0c;然后根据函数看…...

spring Ai---向量知识库(一)

在一些垂直领域以及公司内部信息相关或者实时性相关的大模型应用&#xff0c;就无法直接使用chatGPT。 这个时候&#xff0c;向量知识库就进入了。 通过坐标向量最接近的即为匹配相关答案。 向量模型定义&#xff1a;将文档向量化&#xff0c;保证内容越相似的文本&#xff0c;…...

jmeter利用csv进行参数化和自动断言

1.测试数据 csv测试数据如下&#xff08;以注册接口为例&#xff09; 2.jemer参数化csv设置 打开 jmeter&#xff0c;添加好线程组、HTTP信息头管理器、CSV 数据文件设置、注册请求、响应断言、查看结果树 1&#xff09; CSV 数据文件设置 若 CSV 中数据包含中文&#xff0c;…...

C# 类型、存储和变量(数据成员和函数成员)

本章内容 C#程序是一组类型声明 类型是一种模板 实例化类型 数据成员和函数成员 预定义类型 用户定义类型 栈和堆 值类型和引用类型 变量 静态类型和dynamic关键字 可空类型 数据成员和函数成员 像short、int和long等这样的类型称为简单类型。这种类型只能存储一个数据项。 其…...

Java八种常见的设计模式

一、单例模式 单例模式是&#xff08;Singleton Pattern&#xff09;Java中最常用的设计模式之一&#xff0c;它保证一个类仅有一个实例&#xff0c;并提供一个全局访问点。 实现单例模式的核心是将类的构造方法私有化&#xff0c;以防止外部直接通过构造函数创建实例。同时&am…...

数据结构实验7.2:二叉树的基本运算

文章目录 一&#xff0c;实验目的二&#xff0c;问题描述三&#xff0c;基本要求四&#xff0c;实验操作五&#xff0c;示例代码六&#xff0c;运行效果 一&#xff0c;实验目的 深入理解树与二叉树的基本概念&#xff0c;包括节点、度、层次、深度等&#xff0c;清晰区分二叉…...

Go-zero框架修改模版进行handler统一响应封装

使用go-zero快速生成接口的时候&#xff0c;发现还是有一些情况不太好处理&#xff0c;比如说&#xff0c;想要自定义响应封装等等。 最开始第一版写api文件的时候&#xff0c;写法是这样的。 type LoginRequest {UserName string json:"userName"Password string …...

AI专题(一)----NLP2SQL探索以及解决方案

前面写了很多编码、算法、底层计算机原理等相关的技术专题&#xff0c;由于工作方向调整的缘故&#xff0c;今天开始切入AI人工智能相关介绍。本来按照规划&#xff0c;应该先从大模型的原理开始介绍会比较合适&#xff0c;但是计划赶不上变化&#xff0c;前面通用大模型的工作…...

深入理解 React Hooks:简化状态管理与副作用处理

在现代前端开发中&#xff0c;React 已经成为了最受欢迎的 JavaScript 库之一。随着 React 16.8 的发布&#xff0c;React Hooks 的引入彻底改变了开发者编写组件的方式。Hooks 提供了一种更简洁、更直观的方式来管理组件的状态和副作用&#xff0c;使得函数组件能够拥有类组件…...

Spring Boot 实现防盗链

在 Spring Boot 项目中实现防盗链可以通过多种方式&#xff0c;下面为你介绍两种常见的实现方法&#xff0c;分别是基于请求头 Referer 和基于令牌&#xff08;Token&#xff09;的防盗链。 基于请求头 Referer 的防盗链 这种方法通过检查请求头中的 Referer 字段&#xff0c…...

Java 动态代理实现

Java 动态代理实现 一、JDK动态代理二、CGLIB动态代理三、动态代理的应用场景四、JDK代理与CGLIB代理比较 动态代理是Java中一种强大的技术&#xff0c;它允许在运行时创建代理对象&#xff0c;用于拦截对目标对象的方法调用。 一、JDK动态代理 JDK动态代理是Java标准库提供的代…...

2025年4月通信科技领域周报(4.07-4.13):6G技术加速落地 卫星通信网络迎来组网高潮

2025年4月通信科技领域周报&#xff08;4.07-4.13&#xff09;&#xff1a;6G技术加速落地 卫星通信网络迎来组网高潮 目录 2025年4月通信科技领域周报&#xff08;4.07-4.13&#xff09;&#xff1a;6G技术加速落地 卫星通信网络迎来组网高潮一、本周热点回顾1. 华为发布全球首…...

《手环表带保养全攻略:材质、清洁与化学品避坑指南》

系列文章目录 文章目录 系列文章目录前言一、表带材质特性与专属养护方案二、清洁剂使用红黑榜三、家庭清洁实验&#xff1a;化学反应警示录四、保养实践方法论总结 前言 手环作为现代生活的智能伴侣&#xff0c;表带材质选择丰富多样。从柔软亲肤的皮质到耐用耐磨的金属&…...

人脸扫描黑科技:多相机人脸扫描设备,打造你的专属数字分身

随着科技的迅猛发展&#xff0c;人脸扫描这个词已经并不陌生&#xff0c;通过人脸扫描设备制作超写实人脸可以为影视制作打造逼真角色、提升游戏沉浸感&#xff0c;还能助力教育机构等领域生产数字人以丰富教学资源&#xff0c;还在安防、身份识别等领域发挥关键作用&#xff0…...

基于Python的中国象棋小游戏的设计与实现

基于Python的中国象棋小游戏的设计与实现 第一章 绪论1.1 研究背景1.2 研究意义 第二章 需求分析2.1 需求分析2.1.1核心功能需求2.1.2 用户体验需求2.1.3 衍生功能需求 2.2 可行性分析2.2.1 技术可行性2.2.2 经济可行性2.2.3 市场可行性2.2.4 法律与合规性 第三章 概要设计3.1 …...

简单好用的在线工具

用AI写了一些在线工具&#xff0c;简介好用&#xff0c;推荐给大家&#xff0c;欢迎大家使用并提议意见。 网址&#xff1a;https://www.bittygarden.com/ 目前已有以下功能&#xff1a; MD5SM3SHAUnicode 编码Unicode 解码Base32 编码Base32 解码Base64 编码Base64 解码URL …...

JAVA设计模式——(1)适配器模式

JAVA设计模式——&#xff08;1&#xff09;适配器模式 目的理解实现优势 目的 将一个类的接口变换成客户端所期待的另一种接口&#xff0c;从而使原本因接口不匹配而无法一起工作的两个类能够在一起工作。 理解 可以想象成一个国标的插头&#xff0c;结果插座是德标的&…...

外卖市场规模巨大,是宽广赛道?京东CEO发言

大家好&#xff0c;我是小悟。 在竞争激烈的外卖市场中&#xff0c;京东作为新入局者&#xff0c;正以独特的战略视角和坚定的决心&#xff0c;重新定义外卖行业的竞争格局。 近日&#xff0c;京东集团CEO许冉在接受采访时表示&#xff1a;“外卖行业本就是一个宽广的赛道&am…...

Flutter PIP 插件 ---- iOS Video Call 自定义PIP WINDOW渲染内容

简介 画中画(Picture in Picture, PiP)是一项允许用户在使用其他应用时继续观看视频内容的功能。本文将详细介绍如何在 iOS 应用中实现 PiP 功能&#xff0c;包括自定义内容渲染和控制系统控件的显示。 效果展示 功能特性 已完成功能 ✅ 基础 PiP 接口实现&#xff08;设置…...

TensorFlow 实现 Mixture Density Network (MDN) 的完整说明

本文档详细解释了一段使用 TensorFlow 构建和训练混合密度网络&#xff08;Mixture Density Network, MDN&#xff09;的代码&#xff0c;涵盖数据生成、模型构建、自定义损失函数与预测可视化等各个环节。 1. 导入库与设置超参数 import numpy as np import tensorflow as t…...

xml+html 概述

1.什么是xml xml 是可扩展标记语言的缩写&#xff1a; Extensible Markup Language。 <root><h1> text 1</h1> </root> web 应用开发&#xff0c;需要配置 web.xml&#xff0c;就是个典型的 xml文件 <web-app><servlet><servlet-name&…...

混合精度训练中的算力浪费分析:FP16/FP8/BF16的隐藏成本

在大模型训练场景中&#xff0c;混合精度训练已成为降低显存占用的标准方案。然而&#xff0c;通过NVIDIA Nsight Compute深度剖析发现&#xff0c;‌精度转换的隐藏成本可能使理论算力利用率下降40%以上‌。本文基于真实硬件测试数据&#xff0c;揭示不同精度格式的计算陷阱。…...

Python语法系列博客 · 第5期[特殊字符] 模块与包的导入:构建更大的程序结构

上一期小练习解答&#xff08;第4期回顾&#xff09; ✅ 练习1&#xff1a;判断偶数函数 def is_even(num):return num % 2 0print(is_even(4)) # True print(is_even(5)) # False✅ 练习2&#xff1a;求平均值 def avg(*scores):return sum(scores) / len(scores)print(…...

Sleuth+Zipkin 服务链路追踪

微服务架构中&#xff0c;为了更好追踪服务之间调用&#xff0c;实现时间分析&#xff0c;性能瓶颈分析&#xff0c;故障排查&#xff0c;因此有必要搭建链路追踪。下面简单介绍下实现的过程。 一.引入依赖 <!-- 链路追踪 zipkin已经集成有sleuth&#xff0c;不需要再单独…...

意志力的源头——AMCC(前部中扣带皮层)

AMCC&#xff08;前部中扣带皮层&#xff09;在面对痛苦需要坚持的事情时会被激活。它的存在能够使人类个体在面临困难的事、本能感到不愿意的麻烦事情时&#xff0c;能够自愿地去做这些事——这些事必须是局部痛苦或宏观的痛苦&#xff0c;即微小的痛苦micro-sucks。 AMCC更多…...

[Jenkins]pnpm install ‘pnpm‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。

这个错误提示再次说明&#xff1a;你的系统&#xff08;CMD 或 Jenkins 环境&#xff09;找不到 pnpm 命令的位置。虽然你可能已经用 npm install -g pnpm 安装过&#xff0c;但系统不知道它装在哪里&#xff0c;也就无法执行 pnpm 命令。 ✅ 快速解决方法&#xff1a;直接用完…...

Java从入门到“放弃”(精通)之旅——数组的定义与使用⑥

Java从入门到“放弃”&#xff08;精通&#xff09;之旅&#x1f680;——数组⑥ 前言——什么是数组&#xff1f; 数组&#xff1a;可以看成是相同类型元素的一个集合&#xff0c;在内存中是一段连续的空间。比如现实中的车库&#xff0c;在java中&#xff0c;包含6个整形类…...