<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>yexca'Blog</title><link>https://blog.yexca.net/</link><description>Recent content on yexca'Blog</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><copyright>yexca</copyright><lastBuildDate>Sun, 08 Mar 2026 18:21:05 +0900</lastBuildDate><atom:link href="https://blog.yexca.net/feed.xml" rel="self" type="application/rss+xml"/><item><title>前后端分离下的国际化实现</title><link>https://blog.yexca.net/archives/269/</link><pubDate>Sun, 08 Mar 2026 18:21:05 +0900</pubDate><guid>https://blog.yexca.net/archives/269/</guid><description>&lt;p>当前国际化的实现方法繁多，各项技术都相当成熟，根据需求选择合适的国际化实现即可&lt;/p>
&lt;h2 id="数据类型">数据类型
&lt;/h2>&lt;p>一般数据类型分为两种，不同的类型适合的处理方法不同&lt;/p>
&lt;h3 id="静态数据">静态数据
&lt;/h3>&lt;p>像是国家、语言、货币、时区等几乎不会改变，有相关国际标准的属于静态数据&lt;/p></description></item><item><title>初次尝试 Deep Research：人类员工存在的意义何在</title><link>https://blog.yexca.net/archives/268/</link><pubDate>Fri, 13 Feb 2026 19:05:52 +0900</pubDate><guid>https://blog.yexca.net/archives/268/</guid><description>&lt;p>最近 GLM-5 呀、OpenAI GPT-5.3 的发布，已经我体验了下突然火起来的《妹居物语》和了解一下 AutoGPT，虽然部分是早已发布的技术，但因为对于我来说还是第一次体验，所以还是让我产生了不小的震撼，在两天的高强度前沿 AI 技术探索下，我不由得再次产生了失业焦虑&lt;/p></description></item><item><title>能量与力量</title><link>https://blog.yexca.net/archives/267/</link><pubDate>Wed, 11 Feb 2026 19:32:48 +0900</pubDate><guid>https://blog.yexca.net/archives/267/</guid><description>&lt;blockquote>
&lt;p>就算只有一只翅膀，也能高高飞起来&lt;/p>
&lt;/blockquote>
&lt;p>最近《学生时代》游戏的发行，我迫不及待想要体验和肖清雅后续的剧情，买来后光速通关，其中了解故事背景加上最近课程上有创作短诗，不由让我引发更深层次的思考&lt;/p></description></item><item><title>开始使用 LaTeX</title><link>https://blog.yexca.net/archives/266/</link><pubDate>Tue, 13 Jan 2026 00:15:47 +0900</pubDate><guid>https://blog.yexca.net/archives/266/</guid><description>&lt;p>在写带参考文献的文章的时候，Word 的体验可以说是一言难尽，我在试着体验 LaTeX 后不得不感慨这就和我之前换到 MarkDown 一样，只用注重内容的书写体验还是太棒了。同时生成的 PDF 也是超级美观，看着赏心悦目&lt;/p></description></item><item><title>使用 docker 搭建 minecraft 服务器</title><link>https://blog.yexca.net/archives/265/</link><pubDate>Tue, 06 Jan 2026 20:38:41 +0900</pubDate><guid>https://blog.yexca.net/archives/265/</guid><description>&lt;h2 id="使用镜像">使用镜像
&lt;/h2>&lt;p>image:
&lt;a class="link" href="https://hub.docker.com/r/itzg/minecraft-server"
target="_blank" rel="noopener"
>
https://hub.docker.com/r/itzg/minecraft-server
&lt;/a>
&lt;/p>
&lt;p>github:
&lt;a class="link" href="https://github.com/itzg/docker-minecraft-server"
target="_blank" rel="noopener"
>
https://github.com/itzg/docker-minecraft-server
&lt;/a>
&lt;/p>
&lt;p>document:
&lt;a class="link" href="https://docker-minecraft-server.readthedocs.io/en/latest/"
target="_blank" rel="noopener"
>
https://docker-minecraft-server.readthedocs.io/en/latest/
&lt;/a>
&lt;/p>
&lt;h2 id="配置文件">配置文件
&lt;/h2>&lt;p>原版&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-yaml" data-lang="yaml">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">services&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">mc&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">image&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">itzg/minecraft-server:java17&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">container_name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">mc&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">ports&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="s2">&amp;#34;25565:25565&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">environment&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">EULA&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;TRUE&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">TYPE&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;VANILLA&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">VERSION&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;1.20.1&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">MEMORY&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s2">&amp;#34;2G&amp;#34;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">volumes&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="l">./data:/data&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">restart&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">unless-stopped&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>开启 forge 版本的配置&lt;/p></description></item><item><title>走进 NDE：如何理解生命的边界</title><link>https://blog.yexca.net/archives/264/</link><pubDate>Thu, 01 Jan 2026 17:16:59 +0900</pubDate><guid>https://blog.yexca.net/archives/264/</guid><description>&lt;blockquote>
&lt;p>意识可以独立于肉体、直觉可以超越逻辑、观测可以改变现实&lt;/p>
&lt;/blockquote>
&lt;p>NDE (Near-Death Experience) 是指濒临死亡的体验，目前有一些个人或组织对其进行过研究，如 IANDS（国际濒死体验研究协会）和 P.M.H. Atwater 博士对数千名 NDErs 的研究等&lt;/p></description></item><item><title>2025 年度总结</title><link>https://blog.yexca.net/archives/263/</link><pubDate>Wed, 31 Dec 2025 16:16:44 +0900</pubDate><guid>https://blog.yexca.net/archives/263/</guid><description>&lt;p>年末将至，新年伊始。回望今年，真的发生了好多事情，甚至到我不知道要不要写出来，可不可以写出来的地步。犹豫很久，在公园的秋千上，我最终还是决定写出来吧&lt;/p></description></item><item><title>利用 Docker 构建临时 Linux 交互环境</title><link>https://blog.yexca.net/archives/262/</link><pubDate>Fri, 26 Dec 2025 18:43:04 +0900</pubDate><guid>https://blog.yexca.net/archives/262/</guid><description>&lt;p>在 Windows 环境下运行一个 bash 脚本显然是难度略大，在 Linux 环境下，运行另一个发行版本的特化脚本显然也是有点麻烦，利用 Docker 可以帮助处理这个问题，同时还可以保护本地环境的纯净&lt;/p></description></item><item><title>你的下一台 NAS，何必是 NAS</title><link>https://blog.yexca.net/archives/261/</link><pubDate>Thu, 13 Nov 2025 17:57:29 +0900</pubDate><guid>https://blog.yexca.net/archives/261/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>早在
&lt;a class="link" href="https://blog.yexca.net/archives/73/"
target="_blank" rel="noopener"
>
2022 年我折腾 Linux 的时候
&lt;/a>
，当时就提到了整 NAS 不一定为系统买单&lt;/p>
&lt;p>如今在服务器的折腾，云盘挂载的速度实在不尽人意，在冲动下，我下单了 N5095 主板，考虑到我手头上有 4G 内存条有点低，但又不是很想再徒增花费，于是我再次开启折腾之旅&lt;/p></description></item><item><title>音有所感 - 《pris-magic!》</title><link>https://blog.yexca.net/archives/260/</link><pubDate>Sat, 01 Nov 2025 14:30:01 +0900</pubDate><guid>https://blog.yexca.net/archives/260/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>之前买了 しぐれうい 的第一张实体专辑「まだ雨はやまない」，但实际上几乎都在听《rainy lady》，上周偶然发现第二张专辑「fiction」的初次限定盘，顺手就买下来了，在看看有什么的时候，顺势就听了下之前的「まだ雨はやまない」，才发现还有这样一首好听的歌错过了啊&lt;/p></description></item><item><title>vue3 获取组件与跨层传递</title><link>https://blog.yexca.net/archives/259/</link><pubDate>Tue, 14 Oct 2025 20:58:25 +0900</pubDate><guid>https://blog.yexca.net/archives/259/</guid><description>&lt;h2 id="获取元素">获取元素
&lt;/h2>&lt;p>通过定义一个 ref 对象来获取元素&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-vue" data-lang="vue">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span> &lt;span class="na">setup&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kr">import&lt;/span> &lt;span class="p">{&lt;/span> &lt;span class="nx">onMounted&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="nx">ref&lt;/span> &lt;span class="p">}&lt;/span> &lt;span class="nx">from&lt;/span> &lt;span class="s1">&amp;#39;vue&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 定义 ref 对象
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kr">const&lt;/span> &lt;span class="nx">inp&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">ref&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kc">null&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="nx">clickFun&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">()&lt;/span> &lt;span class="p">=&amp;gt;&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">inp&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">value&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">focus&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">template&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c">&amp;lt;!--&lt;/span> &lt;span class="nx">通过&lt;/span> &lt;span class="nx">ref&lt;/span> &lt;span class="nx">属性绑定&lt;/span> &lt;span class="o">--&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">input&lt;/span> &lt;span class="na">ref&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;inp&amp;#34;&lt;/span> &lt;span class="na">type&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;text&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&amp;lt;/&lt;/span>&lt;span class="nt">input&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">button&lt;/span> &lt;span class="nt">@click&lt;/span>&lt;span class="s">=&amp;#34;clickFun&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>&lt;span class="na">focus&lt;/span> &lt;span class="na">on&lt;/span> &lt;span class="na">input&lt;/span>&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">button&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">template&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>当然因为需要组件挂载后才能获取到，所以要进入页面就使用的话需要使用 &lt;code>onMounted()&lt;/code> 函数&lt;/p></description></item><item><title>漫画与音声网站折腾</title><link>https://blog.yexca.net/archives/258/</link><pubDate>Sun, 05 Oct 2025 01:58:35 +0900</pubDate><guid>https://blog.yexca.net/archives/258/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>Google 的 Gemini Pro 订阅带 2TiB 的空间，那就又让我想到了折腾，那么说做就做吧&lt;/p>
&lt;p>不过再一看，
&lt;a class="link" href="https://blog.yexca.net/archives/73"
target="_blank" rel="noopener"
>
之前的折腾
&lt;/a>
已经过去三年了啊，时间过的确实有点快捏&lt;/p>
&lt;h2 id="漫画-komga">漫画 Komga
&lt;/h2>&lt;p>首先是看漫画的 Komga，虽然扫描的时候卡卡的，但使用体验其实还行吧&lt;/p></description></item><item><title>2025 新服务器部署记录</title><link>https://blog.yexca.net/archives/257/</link><pubDate>Fri, 03 Oct 2025 10:22:25 +0900</pubDate><guid>https://blog.yexca.net/archives/257/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>恰逢服务器快过期，去年虽然续费了一年，但今年看到各种优惠突然觉得续费有点小贵，在看了许多小服务器厂商后，看到阿里云有 12 个月内无账单则可享受优惠，那既然都看到大厂了，顺势就想到了 Oracle&lt;/p></description></item><item><title>支持</title><link>https://blog.yexca.net/support/</link><pubDate>Tue, 30 Sep 2025 19:07:24 +0900</pubDate><guid>https://blog.yexca.net/support/</guid><description>&lt;p>如果这里的内容对您有帮助，不妨请我喝杯咖啡吧 ☕&lt;br>
欢迎通过以下方式支持：&lt;/p>
&lt;ul>
&lt;li>
&lt;a class="link" href="https://afdian.com/a/yexca"
target="_blank" rel="noopener"
>
爱发电 @yexca
&lt;/a>
&lt;/li>
&lt;li>
&lt;a class="link" href="https://buymeacoffee.com/yexca"
target="_blank" rel="noopener"
>
Buy me a Coffee @yexca
&lt;/a>
&lt;/li>
&lt;/ul></description></item><item><title>Python 处理 JSON 文件</title><link>https://blog.yexca.net/archives/256/</link><pubDate>Sun, 28 Sep 2025 10:34:38 +0900</pubDate><guid>https://blog.yexca.net/archives/256/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>某大佬给了 Record Tree 的 JSON 文件，那顺势
&lt;a class="link" href="https://github.com/yexca/RecordTreeDownloader-SQLite"
target="_blank" rel="noopener"
>
随便写点东西
&lt;/a>
方便一下，记录下忘了的东西 &lt;del>(嗯，还正好是第 256 个文章呢)&lt;/del>&lt;/p>
&lt;p>不过我在
&lt;a class="link" href="https://github.com/yexca/PixivDownloader-SQLite"
target="_blank" rel="noopener"
>
PixivDownloader
&lt;/a>
也用到了来着，都忘完了属于是&lt;/p></description></item><item><title>Vue3 父子组件传参</title><link>https://blog.yexca.net/archives/255/</link><pubDate>Sun, 21 Sep 2025 19:17:40 +0900</pubDate><guid>https://blog.yexca.net/archives/255/</guid><description>&lt;p>第 255 篇文章欸，虽然最近没什么特殊的想法来着，顺势写 Vue 笔记吧&lt;/p>
&lt;h2 id="引入子组件">引入子组件
&lt;/h2>&lt;p>定义子组件&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-vue" data-lang="vue">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span> &lt;span class="na">setup&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">template&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">this&lt;/span> &lt;span class="nx">is&lt;/span> &lt;span class="nx">a&lt;/span> &lt;span class="nx">son&lt;/span> &lt;span class="nx">component&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">template&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>在父组件中使用&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-vue" data-lang="vue">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span> &lt;span class="na">setup&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kr">import&lt;/span> &lt;span class="nx">SonCom&lt;/span> &lt;span class="nx">from&lt;/span> &lt;span class="s1">&amp;#39;@/components/son-com.vue&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">template&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">h2&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>&lt;span class="k">this&lt;/span> &lt;span class="nx">is&lt;/span> &lt;span class="nx">a&lt;/span> &lt;span class="nx">father&lt;/span> &lt;span class="nx">component&lt;/span>&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">h2&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c">&amp;lt;!--&lt;/span> &lt;span class="nx">直接使用&lt;/span> &lt;span class="o">--&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">SonCom&lt;/span>&lt;span class="p">&amp;gt;&amp;lt;/&lt;/span>&lt;span class="nt">SonCom&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">template&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="父组件向子组件传参">父组件向子组件传参
&lt;/h2>&lt;p>在父组件中通过属性传值&lt;/p></description></item><item><title>Vue3 组合式 API 学习</title><link>https://blog.yexca.net/archives/254/</link><pubDate>Sun, 14 Sep 2025 22:27:27 +0900</pubDate><guid>https://blog.yexca.net/archives/254/</guid><description>&lt;h2 id="创建项目">创建项目
&lt;/h2>&lt;p>需要 Node.js 16.0 或更高版本，执行指令&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">npm init vue@latest
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>这一指令将会安装并执行 create-vue&lt;/p>
&lt;h2 id="setup">setup
&lt;/h2>&lt;h3 id="执行周期">执行周期
&lt;/h3>&lt;p>执行时机比 &lt;code>beforeCreate()&lt;/code> 还要早，所以也无法使用 &lt;code>this&lt;/code>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-vue" data-lang="vue">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kr">export&lt;/span> &lt;span class="k">default&lt;/span>&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">setup&lt;/span>&lt;span class="p">(){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">console&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">log&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;setup&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="k">this&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">},&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">beforeCreate&lt;/span>&lt;span class="p">(){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">console&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">log&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;beforeCreate&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>执行后，先打印 &lt;code>setup undefined&lt;/code> 然后才是 &lt;code>beforeCreate&lt;/code>&lt;/p></description></item><item><title>放松不是娱乐：一场精神力的再定义</title><link>https://blog.yexca.net/archives/253/</link><pubDate>Fri, 22 Aug 2025 22:17:38 +0900</pubDate><guid>https://blog.yexca.net/archives/253/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>每天刷刷视频，玩玩游戏，本觉得应该是很放松的行为，理应在此之后精神恢复来着，但实际上每天如此的生活却很空乏劳累，这让我产生了疑惑，理论上我并没有做什么高消耗的事情，可如此无精打采属实有点不是太正常&lt;/p></description></item><item><title>漂浮的学习，错位的生活</title><link>https://blog.yexca.net/archives/252/</link><pubDate>Mon, 18 Aug 2025 18:27:12 +0900</pubDate><guid>https://blog.yexca.net/archives/252/</guid><description>&lt;h2 id="引言飘零的学习感">引言：飘零的学习感
&lt;/h2>&lt;p>因想着是否可以提升一定的英文水平，所以一般不是很重要的东西我尽量使用英文，比如说游戏或者日常使用的应用软件，但是每次使用都是一种没有任何掌握的感觉，或者说有种很飘零的感觉，仿佛我没有经历过这些东西&lt;/p></description></item><item><title>幻梦</title><link>https://blog.yexca.net/archives/251/</link><pubDate>Sun, 17 Aug 2025 01:13:32 +0900</pubDate><guid>https://blog.yexca.net/archives/251/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>前几天 (2025-08-13) 我做了一个梦，梦里一个系列的第二部电影《幻梦》的署名是我，虽然不知道是作为导演还是编剧，这部电影的名字也只是从类似这个系列的制片厂的两句短语选出来的，第一部也是，但是两部电影毫无关联&lt;/p></description></item><item><title>音有所感 - 《恋しくなったら手を叩こう》</title><link>https://blog.yexca.net/archives/250/</link><pubDate>Sat, 07 Jun 2025 01:09:19 +0900</pubDate><guid>https://blog.yexca.net/archives/250/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>声音和歌曲的感觉好配，简直绝配了，尤其是 &amp;ldquo;せーのっ&amp;rdquo; 开始后，空灵青春感涌现，很清新很甜的歌风&lt;/p></description></item><item><title>音有所感 - 《rainy lady》</title><link>https://blog.yexca.net/archives/249/</link><pubDate>Tue, 20 May 2025 23:44:07 +0900</pubDate><guid>https://blog.yexca.net/archives/249/</guid><description>&lt;blockquote>
&lt;p>考虑到此系列文章貌似并不会对他人 &amp;ldquo;日语学习&amp;rdquo; 提供任何帮助，又是可以被检索到的文章，特更改系列名称符合文章系列现状&lt;br>
怎么说呢，也就是多数是我个人的音乐感想吧，歌词翻译也按照我自己理解 (自己听到的时候的感受) 不一定和原文相符&lt;/p></description></item><item><title>Pixiv 下载器重构记：从乱写到理解混乱</title><link>https://blog.yexca.net/archives/248/</link><pubDate>Sun, 18 May 2025 16:20:33 +0900</pubDate><guid>https://blog.yexca.net/archives/248/</guid><description>&lt;p>本来想着随便写个小东西来着，用个两天就忘记 (以往大多数都是这样)，但在不出错运行的情况下节省了我好多时间，越用越顺手&lt;/p>
&lt;p>慢慢就激发了自己之前的那个 “为什么不用 SQLite 呢” 的想法，确实，每次都开个 MySQL 着实有点过于麻烦了，于是这一版应运而生了，终于不用每次都开数据库服务了 &lt;del>(也终于是人类能用的了)&lt;/del>&lt;/p></description></item><item><title>拥抱 DevOps：把我的博客构造部署工作甩给 GitHub</title><link>https://blog.yexca.net/archives/247/</link><pubDate>Fri, 16 May 2025 18:14:06 +0900</pubDate><guid>https://blog.yexca.net/archives/247/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最近在想着自己要继续做什么或者学什么的时候，老是看到 “DevOps” 这个词。起初我随手一搜，发现上面列的技术栈自己差不多都有所了解，还以为是类似“全栈”那样多掌握点工具 (虽然事实上好像也是)
不过因为没什么兴趣道也就耽搁了 (其实是没开发热情了)&lt;/p></description></item><item><title>为了能搜到自己的名字：一次小站 SEO 排查实践</title><link>https://blog.yexca.net/archives/246/</link><pubDate>Sun, 27 Apr 2025 17:38:16 +0900</pubDate><guid>https://blog.yexca.net/archives/246/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>又一次的自我介绍时，我不由得又想到了我的博客&lt;/p>
&lt;p>过去我总是直接打开 Google 搜索 &lt;code>yexca&lt;/code> 点开第一个结果，进入我的博客&lt;br>
但自从更换域名以来，无数次搜索 &lt;code>yexca&lt;/code> ，我的博客却始终消失在搜索之外&lt;/p></description></item><item><title>从卡粉到架构师：生活中的系统设计哲学</title><link>https://blog.yexca.net/archives/245/</link><pubDate>Tue, 22 Apr 2025 00:35:15 +0900</pubDate><guid>https://blog.yexca.net/archives/245/</guid><description>&lt;img src="https://github.com/yexca/picx-images-hosting/raw/master/2025/04-FromCardEnthusiastToArchitect/250422.3nrtfm915a.webp" alt="Featured image of post 从卡粉到架构师：生活中的系统设计哲学" />&lt;blockquote>
&lt;p>不是所有刷卡的都是羊毛党，不是所有设计系统的都是程序员。有些人，卡刷得像设计师，系统写得像生活家&lt;/p>
&lt;/blockquote>
&lt;h2 id="1-引子卡粉是什么">1. 引子：卡粉是什么？
&lt;/h2>&lt;p>说起这不得不提到之前看到的卡友七大爱好：&lt;/p></description></item><item><title>从省钱，到生活，再到告别</title><link>https://blog.yexca.net/archives/244/</link><pubDate>Mon, 14 Apr 2025 16:23:48 +0900</pubDate><guid>https://blog.yexca.net/archives/244/</guid><description>&lt;blockquote>
&lt;p>2023 年 04 月，我开始记账。2025 年 04 月，我停止了记账。&lt;br>
最后一笔记录：¥0&lt;/p>
&lt;/blockquote>
&lt;h2 id="起点为了省钱与掌控">起点：为了省钱与掌控
&lt;/h2>&lt;p>起因很简单——控制消费，提升金钱意识。刚开始的确非常有效，帮我遏制了一些不好的消费习惯&lt;/p></description></item><item><title>收藏我的音乐，珍藏我的心情</title><link>https://blog.yexca.net/archives/243/</link><pubDate>Wed, 26 Mar 2025 18:18:31 +0900</pubDate><guid>https://blog.yexca.net/archives/243/</guid><description>&lt;p>自从我在博客上开始发一些较为专业性的学习内容后，它慢慢变得过于枯燥与乏味，甚至于我打开博客只会想到去学东西，这种心理暗示导致我慢慢得开始对写博客文章有了抵触心理，也早早想到了写点其他的文章但迟迟不知从何下手。正好借着最近的经历，尝试写一篇非技术文章试试吧&lt;/p></description></item><item><title>软件设计师 - 操作系统部分笔记</title><link>https://blog.yexca.net/archives/242/</link><pubDate>Sun, 16 Mar 2025 19:35:38 +0900</pubDate><guid>https://blog.yexca.net/archives/242/</guid><description>&lt;p>应该和之前的笔记编写时间相差不多，因为文件创建时间已经超过考试时间，可能某次移动文件是创造写吧&lt;/p>
&lt;h2 id="操作系统的地位">操作系统的地位
&lt;/h2>&lt;p>计算机系统由硬件和软件两部分组成。通常把未配置软件的计算机称为裸机。直接使用裸机不仅不方便，而且将严重降低工作效率和机器的利用率。操作系统 (Operating System) 目的是为了填补人与机器之间的鸿沟，即建立用户与计算机之间的接口，而为裸机配置的一种系统软件&lt;/p></description></item><item><title>使用 WeBASE 部署 FISCO BCOS 区块链</title><link>https://blog.yexca.net/archives/241/</link><pubDate>Thu, 13 Mar 2025 01:08:02 +0900</pubDate><guid>https://blog.yexca.net/archives/241/</guid><description>&lt;p>文章写于 2024-04-29，之后改了一次来着，本来以为写完了，但今天看居然没写完，但是相关东西我早就删了来着，唉，就这样吧&lt;/p>
&lt;p>部署 webase 直接部署 fisco bcos&lt;/p></description></item><item><title>国际化适配字体</title><link>https://blog.yexca.net/archives/240/</link><pubDate>Mon, 10 Mar 2025 23:56:56 +0900</pubDate><guid>https://blog.yexca.net/archives/240/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>在国际化后因为也不怎么关注其他语言的文章，直到我之前冲浪的时候，看到了不错的日文字体，这不得给它抄了，然后就发现我这其他语言的字体真是一言难尽啊&lt;/p></description></item><item><title>音有所感 - 《生きるを選んだ私へ》</title><link>https://blog.yexca.net/archives/239/</link><pubDate>Fri, 07 Mar 2025 01:26:31 +0900</pubDate><guid>https://blog.yexca.net/archives/239/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>初看歌曲题目就大概猜到这首歌的大概意思，同时也唤起了我之前对于生命的思考。之前对于为什么活着我始终找不到答案，但是反过来思考为什么不去自杀呢，我尝试过思考自杀的方式以及这些方式会造成的后果，了解到自己对于自杀是恐惧的，因为害怕自杀，所以我选择了活下去。这正好和这歌对应上了&lt;/p></description></item><item><title>软件设计师 - 信息安全部分笔记</title><link>https://blog.yexca.net/archives/238/</link><pubDate>Tue, 04 Mar 2025 18:38:28 +0900</pubDate><guid>https://blog.yexca.net/archives/238/</guid><description>&lt;p>同
&lt;a class="link" href="https://blog.yexca.net/archives/236/"
>
计算机网络的笔记
&lt;/a>
的编写时间，毕竟考试这俩部分在一起，都是同时学的&lt;/p>
&lt;h2 id="防火墙技术">防火墙技术
&lt;/h2>&lt;p>防火墙 (Firewall) 是建立在内外网络边界上的过滤封锁机制，它认为内部网络是安全和可信赖的，而外部网络是不安全和不可信赖的&lt;/p></description></item><item><title>获取 Onedrive 下载直链</title><link>https://blog.yexca.net/archives/237/</link><pubDate>Sun, 02 Mar 2025 12:58:57 +0900</pubDate><guid>https://blog.yexca.net/archives/237/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最近下载 Onedrive 分享的东西发现不能被 IDM 自动捕捉，而浏览器下载不稳定老是下载失败，于是我便想着看看有没有办法获取下载直链&lt;/p>
&lt;h2 id="扩展问题">扩展问题
&lt;/h2>&lt;p>刚开始看到不支持了以为是要重新安装呢，结果删除后去 chrome 扩展商店显示无法安装，啊这，删早了&lt;/p></description></item><item><title>软件设计师 - 计算机网络部分笔记</title><link>https://blog.yexca.net/archives/236/</link><pubDate>Sat, 01 Mar 2025 23:28:30 +0900</pubDate><guid>https://blog.yexca.net/archives/236/</guid><description>&lt;p>从图片链接就能直到这是 2023-04 的笔记了，一直没发是因为几乎就只是知识点而已，不是一种文章的样式，不过毕竟也是笔记，偶尔想查阅的时候还是直接看博客方便啊&lt;/p></description></item><item><title>Elasticsearch 集群</title><link>https://blog.yexca.net/archives/235/</link><pubDate>Sat, 15 Feb 2025 17:17:08 +0900</pubDate><guid>https://blog.yexca.net/archives/235/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>单机的 es 做数据存储必然面临两个问题：海量数据存储与单点故障问题&lt;/p></description></item><item><title>Elasticsearch 数据同步</title><link>https://blog.yexca.net/archives/234/</link><pubDate>Fri, 14 Feb 2025 20:36:55 +0900</pubDate><guid>https://blog.yexca.net/archives/234/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>es 的数据来自 MySQL 数据库，因此 MySQL 数据发送改变时，es 也必须跟着改变，此为 es 与 MySQL 之间的数据同步&lt;/p></description></item><item><title>个人品茶史</title><link>https://blog.yexca.net/archives/233/</link><pubDate>Wed, 12 Feb 2025 23:58:53 +0900</pubDate><guid>https://blog.yexca.net/archives/233/</guid><description>&lt;p>这篇文章文件创建到最后修改时间是 2022.10.31 - 2024.09.15，记录了这段时期内我尝过的茶叶以及个人感受&lt;/p>
&lt;p>不过到了较为后期的时候，事实上我已经不是很喜欢这个爱好了，记录就很敷衍，但总归是自己做过的爱好，再加上文章编号到了 233，那就放一个可能有点意思的文章吧 &lt;del>(老早就以为自己发过了，拖到了现在)&lt;/del>&lt;/p></description></item><item><title>Elasticsearch 自动补全</title><link>https://blog.yexca.net/archives/232/</link><pubDate>Sun, 09 Feb 2025 17:29:28 +0900</pubDate><guid>https://blog.yexca.net/archives/232/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>当用户在搜索框输入字符时，应提示与该字符有关的搜索项，根据输入的字母提供完整词条功能，就是自动补全&lt;/p></description></item><item><title>Elasticsearch 数据聚合</title><link>https://blog.yexca.net/archives/231/</link><pubDate>Sat, 08 Feb 2025 14:56:36 +0900</pubDate><guid>https://blog.yexca.net/archives/231/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>
&lt;a class="link" href="https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html"
target="_blank" rel="noopener"
>
聚合 (aggregations)
&lt;/a>
可以让我们极其方便地实现对数据的统计、分析、运算。例如：&lt;/p></description></item><item><title>音有所感 - 《drop》</title><link>https://blog.yexca.net/archives/230/</link><pubDate>Thu, 06 Feb 2025 22:06:10 +0900</pubDate><guid>https://blog.yexca.net/archives/230/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>今天尝试做了 2019 年 12 月的 N1 试卷，居然一不小心合格了，突然就激发了我想写一个学日语的文章，就是这个系列啦&lt;/p></description></item><item><title>Elasticsearch RestClient 查询</title><link>https://blog.yexca.net/archives/229/</link><pubDate>Wed, 05 Feb 2025 15:50:26 +0900</pubDate><guid>https://blog.yexca.net/archives/229/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>文档的查询同样使用 RestHighLevelClient 对象&lt;/p></description></item><item><title>Elasticsearch RestClient 入门</title><link>https://blog.yexca.net/archives/228/</link><pubDate>Mon, 03 Feb 2025 22:30:00 +0900</pubDate><guid>https://blog.yexca.net/archives/228/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>ES 官方提供了各种不同语言的客户端，用来操作 ES，这些客户端的本质就是组装 DSL 语句，通过 HTTP 请求发送给 ES&lt;/p></description></item><item><title>Elasticsearch 查询</title><link>https://blog.yexca.net/archives/227/</link><pubDate>Sat, 01 Feb 2025 15:16:28 +0900</pubDate><guid>https://blog.yexca.net/archives/227/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/226"
>
https://blog.yexca.net/archives/226
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>上篇文章主要为 es 的数据存储功能，但 es 最擅长的还是搜索和数据分析&lt;/p></description></item><item><title>Elasticsearch 入门</title><link>https://blog.yexca.net/archives/226/</link><pubDate>Wed, 29 Jan 2025 23:38:51 +0900</pubDate><guid>https://blog.yexca.net/archives/226/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Elasticsearch 系列&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">内容&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 基础操作&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/227"
>
https://blog.yexca.net/archives/227
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 基础操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/228"
>
https://blog.yexca.net/archives/228
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">RestClient 查询操作&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/229"
>
https://blog.yexca.net/archives/229
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据聚合&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/231"
>
https://blog.yexca.net/archives/231
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 自动补全&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/232"
>
https://blog.yexca.net/archives/232
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 数据同步&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/234"
>
https://blog.yexca.net/archives/234
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">Elasticsearch 集群&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/235"
>
https://blog.yexca.net/archives/235
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/blockquote>
&lt;p>Elasticsearch 是一款非常强大的开源搜索引擎，可以帮助我们从海量数据中快速找到需要的内容。结合 kibana、Logstash、Beats，也就是 elastic stack (ELK)。被广泛应用在日志数据分析、实时监控等领域&lt;/p></description></item><item><title>Redis 分布式缓存</title><link>https://blog.yexca.net/archives/225/</link><pubDate>Tue, 28 Jan 2025 21:47:19 +0900</pubDate><guid>https://blog.yexca.net/archives/225/</guid><description>&lt;blockquote>
&lt;p>Redis 基础:
&lt;a class="link" href="https://blog.yexca.net/archives/157/"
>
https://blog.yexca.net/archives/157/
&lt;/a>
&lt;br>
Redis 分布式缓存: 本文&lt;/p>
&lt;/blockquote>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>&lt;del>所以这俩文章同时写的但却过了一年才发是吧&lt;/del>&lt;/p>
&lt;p>其实是我当时有三个要写的来着，但每次想起来看的时候都忘了要写啥，就过了快一年。。。&lt;/p></description></item><item><title>音有所感 - 《17さいのうた》</title><link>https://blog.yexca.net/archives/224/</link><pubDate>Sat, 25 Jan 2025 16:57:49 +0900</pubDate><guid>https://blog.yexca.net/archives/224/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>本来只是可以听懂对自己的信的部分，觉得挺符合第一次听到的我，于是一直听着来着&lt;/p></description></item><item><title>Spring 自动配置与起步依赖</title><link>https://blog.yexca.net/archives/223/</link><pubDate>Thu, 23 Jan 2025 15:06:36 +0900</pubDate><guid>https://blog.yexca.net/archives/223/</guid><description>&lt;h2 id="配置">配置
&lt;/h2>&lt;p>yaml、yml、properties 文件都可以配置，还可以通过 Java 系统属性和命令行参数&lt;/p>
&lt;p>优先级：命令行参数 &amp;gt; Java 系统属性 &amp;gt; properties &amp;gt; yml &amp;gt; yaml&lt;/p>
&lt;p>命令行使用，需要首先运行 Maven 的打包指令，然后在命令行运行&lt;/p></description></item><item><title>Spring 事务管理</title><link>https://blog.yexca.net/archives/222/</link><pubDate>Wed, 22 Jan 2025 13:30:38 +0900</pubDate><guid>https://blog.yexca.net/archives/222/</guid><description>&lt;h2 id="事务">事务
&lt;/h2>&lt;p>事务是一组操作的集合，它是一个不可分割的工作单位，这些操作要么同时成功，要么同时失败&lt;/p>
&lt;p>操作：&lt;/p>
&lt;ul>
&lt;li>开启事务 (一组操作开始前，开启事务)：start transaction / begin&lt;/li>
&lt;li>提交事务 (这组操作全部成功后，提交事务)：commit&lt;/li>
&lt;li>回滚事务 (中间任何一个操作出现异常，回滚事务)：rollback&lt;/li>
&lt;/ul>
&lt;p>假设删除部门后要继续删除该部门员工&lt;/p></description></item><item><title>Spring AOP(面向切面编程)</title><link>https://blog.yexca.net/archives/221/</link><pubDate>Tue, 21 Jan 2025 16:05:57 +0900</pubDate><guid>https://blog.yexca.net/archives/221/</guid><description>&lt;p>Aspect Oriented Programming (面向切面编程、面向方面编程) 是面向特定方法编程&lt;/p>
&lt;p>动态代理是面向切面编程最主流的实现。而 SpringAOP 是 Spring 框架的高级技术，旨在管理 bean 对象的过程中，主要通过底层的动态代理机制，对特定的方法进行编程&lt;/p></description></item><item><title>音有所感 - 《恋の押し売り》</title><link>https://blog.yexca.net/archives/220/</link><pubDate>Mon, 20 Jan 2025 16:24:43 +0900</pubDate><guid>https://blog.yexca.net/archives/220/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>实际上早就翻译了捏~(￣▽￣)~*&lt;/p></description></item><item><title>音有所感 - 《あくあ色ぱれっと》</title><link>https://blog.yexca.net/archives/219/</link><pubDate>Mon, 20 Jan 2025 00:16:48 +0900</pubDate><guid>https://blog.yexca.net/archives/219/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/214"
>
https://blog.yexca.net/archives/214
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>第二首本来想选我的 2024 年度歌曲的，不过不经意间听到了 aqua 的歌，便想到了这首，之前听的时候只是中间的有一段和我的人生经历有点类似，所以一直在听，全曲认真翻译后才知道染上 aqua 颜色的梗从这来的啊 (在 C105 听到“想染上 aqua 的颜色的话”，还以为是来自《君色に染まる》)&lt;/p></description></item><item><title>JWT 登录校验</title><link>https://blog.yexca.net/archives/218/</link><pubDate>Thu, 16 Jan 2025 23:06:20 +0900</pubDate><guid>https://blog.yexca.net/archives/218/</guid><description>&lt;h2 id="会话技术">会话技术
&lt;/h2>&lt;p>会话：用户打开浏览器，访问 web 服务器的资源，会话建立，直到有一方断开连接，会话结束。在一次会话中可以包含多次请求和响应&lt;/p>
&lt;p>会话跟踪：一种维护浏览器状态的方法，服务器需要识别多次请求是否来自于同一浏览器，以便在同一次会话的多次请求间共享数据&lt;/p></description></item><item><title>SpringAMQP</title><link>https://blog.yexca.net/archives/217/</link><pubDate>Wed, 15 Jan 2025 17:03:32 +0900</pubDate><guid>https://blog.yexca.net/archives/217/</guid><description>&lt;h2 id="初识-mq">初识 MQ
&lt;/h2>&lt;h3 id="同步调用">同步调用
&lt;/h3>&lt;p>微服务间基于 Feign 的调用属于同步方式，存在一些问题&lt;/p>
&lt;p>例如要开发一个支付服务，需要加入订单服务和仓储服务的代码，后期若要加入短信服务、积分服务等都需要修改支付代码，违反了
&lt;a class="link" href="https://blog.yexca.net/archives/93#%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E8%AE%BE%E8%AE%A1%E5%8E%9F%E5%88%99"
>
开放-封闭原则
&lt;/a>
，并且在请求返回前无法做其他事情也会造成性能的浪费&lt;/p></description></item><item><title>MyBatis 使用</title><link>https://blog.yexca.net/archives/216/</link><pubDate>Mon, 13 Jan 2025 21:06:03 +0900</pubDate><guid>https://blog.yexca.net/archives/216/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>MyBatis 系列&lt;/strong>&lt;/p>
&lt;p>MyBatis 安装与入门:
&lt;a class="link" href="https://blog.yexca.net/archives/215"
>
https://blog.yexca.net/archives/215
&lt;/a>
&lt;br>
MyBatis 使用: 本文&lt;/p>
&lt;/blockquote>
&lt;h2 id="删除">删除
&lt;/h2>&lt;p>使用 &lt;code>#{}&lt;/code> 为占位符，内部为参数名&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-java" data-lang="java">&lt;span class="line">&lt;span class="cl">&lt;span class="nd">@Mapper&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="kd">public&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kd">interface&lt;/span> &lt;span class="nc">EmpMapper&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="c1">// 删除&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nd">@Delete&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;delete from mybatis.emp where id = #{id}&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">public&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kt">void&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="nf">delete&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">Integer&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">id&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>测试&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-java" data-lang="java">&lt;span class="line">&lt;span class="cl">&lt;span class="nd">@SpringBootTest&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="kd">class&lt;/span> &lt;span class="nc">Mybatis02ApplicationTests&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nd">@Autowired&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kd">private&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">EmpMapper&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">empMapper&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nd">@Test&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="kt">void&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="nf">contextLoads&lt;/span>&lt;span class="p">()&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">empMapper&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="na">delete&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">17&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>一般不需要返回值，返回值为此次操作影响的行数&lt;/p></description></item><item><title>MyBatis 安装与入门</title><link>https://blog.yexca.net/archives/215/</link><pubDate>Sun, 12 Jan 2025 23:59:48 +0900</pubDate><guid>https://blog.yexca.net/archives/215/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>MyBatis 系列&lt;/strong>&lt;/p>
&lt;p>MyBatis 安装与入门: 本文&lt;br>
MyBatis 使用:
&lt;a class="link" href="https://blog.yexca.net/archives/216"
>
https://blog.yexca.net/archives/216
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>MyBatis 是一款优秀的持久层框架，用于简化 JDBC 的开发&lt;/p>
&lt;h2 id="mysql-安装-windows">MySQL 安装 Windows
&lt;/h2>&lt;p>下载：
&lt;a class="link" href="https://dev.mysql.com/downloads/mysql/"
target="_blank" rel="noopener"
>
https://dev.mysql.com/downloads/mysql/
&lt;/a>
&lt;/p>
&lt;p>下载 ZIP Archive&lt;/p>
&lt;p>解压，环境变量配置 &lt;code>MYSQL_HOME&lt;/code> PATH 路径 &lt;code>%MYSQL_HOME%\bin&lt;/code>&lt;/p></description></item><item><title>音有所感 - 《僕が死のうと思ったのは》</title><link>https://blog.yexca.net/archives/214/</link><pubDate>Sat, 11 Jan 2025 01:10:51 +0900</pubDate><guid>https://blog.yexca.net/archives/214/</guid><description>&lt;details>
&lt;summary>音有所感系列&lt;/summary>
&lt;div>&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: left">歌曲名&lt;/th>
&lt;th style="text-align: left">翻译&lt;/th>
&lt;th style="text-align: left">链接&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: left">僕が死のうと思ったのは&lt;/td>
&lt;td style="text-align: left">曾经我也想过一了百了&lt;/td>
&lt;td style="text-align: left">本文&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">あくあ色ぱれっと&lt;/td>
&lt;td style="text-align: left">aqua 的调色盘&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/219"
>
https://blog.yexca.net/archives/219
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋の押し売り&lt;/td>
&lt;td style="text-align: left">恋爱推销&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/220"
>
https://blog.yexca.net/archives/220
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">17さいのうた&lt;/td>
&lt;td style="text-align: left">17 岁的歌&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/224"
>
https://blog.yexca.net/archives/224
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">drop&lt;/td>
&lt;td style="text-align: left">坠入爱河&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/230"
>
https://blog.yexca.net/archives/230
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">生きるを選んだ私へ&lt;/td>
&lt;td style="text-align: left">致选择活下去的自己&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/239"
>
https://blog.yexca.net/archives/239
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">rainy lady&lt;/td>
&lt;td style="text-align: left">雨意未晴&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/249"
>
https://blog.yexca.net/archives/249
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">恋しくなったら手を叩こう&lt;/td>
&lt;td style="text-align: left">想谈恋爱的话就拍拍手吧&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/250"
>
https://blog.yexca.net/archives/250
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: left">pris-magic!&lt;/td>
&lt;td style="text-align: left">棱镜魔法!&lt;/td>
&lt;td style="text-align: left">
&lt;a class="link" href="https://blog.yexca.net/archives/260"
>
https://blog.yexca.net/archives/260
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;/details>
&lt;style lang="scss">
details {
margin: 1.5em 0;
padding: 1rem;
border: 1px solid #e0e0e0;
border-radius: 8px;
background-color: var(--body-background);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
&amp;:hover {
border-color: #cccccc;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
}
summary {
display: block;
cursor: pointer;
font-weight: 600;
color: var(--card-text-color-main);
padding: 0;
list-style: none;
&amp;::-webkit-details-marker {
display: none;
}
&amp;::before {
content: '▶';
margin-right: 0.5em;
font-size: 0.8em;
transition: transform 0.2s ease;
display: inline-block;
}
}
details[open] > summary::before {
content: '▼';
transform: rotate(0deg);
}
details > div {
margin-top: 1rem;
padding-top: 1rem;
border-top: 1px dashed #e0e0e0;
line-height: 1.6;
color: var(--card-text-color-main)
}
details > div pre {
margin-bottom: 0;
}
&lt;/style>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>有没有一种听力材料，可以让人不是处于学习的状态，可以反复听，并可以尝试影子跟读的呢。这不就是歌曲吗！&lt;/p></description></item><item><title>Python pyinstaller 打包</title><link>https://blog.yexca.net/archives/213/</link><pubDate>Tue, 07 Jan 2025 17:26:09 +0900</pubDate><guid>https://blog.yexca.net/archives/213/</guid><description>&lt;p>Python 打包是根据当前系统环境的，Windows 下是打包出 exe 可执行程序，Linux 下打包出 ELF 格式的二进制文件，不支持跨平台打包&lt;/p>
&lt;h2 id="安装">安装
&lt;/h2>&lt;p>通过 pip 安装&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bat" data-lang="bat">&lt;span class="line">&lt;span class="cl">pip install pyinstaller
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="打包为单文件">打包为单文件
&lt;/h2>&lt;p>使用参数 &lt;code>--onefile&lt;/code>&lt;/p></description></item><item><title>毛玻璃效果</title><link>https://blog.yexca.net/archives/212/</link><pubDate>Sun, 05 Jan 2025 16:19:36 +0900</pubDate><guid>https://blog.yexca.net/archives/212/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>今天想对最近设计的半透明、毛玻璃和圆角进行总结来着，突然想到 2023-12-01 貌似做过一个什么东西，这便顺便也重整一下得了&lt;/p>
&lt;h2 id="页面背景">页面背景
&lt;/h2>&lt;p>现代的 &lt;del>(二次元)&lt;/del> 网页要有一个背景&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-css" data-lang="css">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">body&lt;/span>&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">background-image&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="nb">url&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;../img/77194247_p0.jpg&amp;#39;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">background-size&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">cover&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">background-attachment&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">fixed&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c">/* 固定 */&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">background-repeat&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">no-repeat&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c">/* 不重复 */&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">padding&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">margin&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="半透明与毛玻璃">半透明与毛玻璃
&lt;/h2>&lt;p>然后在背景上加一个蒙版，实现半透明与毛玻璃效果&lt;/p></description></item><item><title>Pixiv 下载器</title><link>https://blog.yexca.net/archives/211/</link><pubDate>Fri, 03 Jan 2025 20:05:44 +0900</pubDate><guid>https://blog.yexca.net/archives/211/</guid><description>&lt;blockquote>
&lt;p>2025-05-18 更新&lt;br>
我写了个 SQLite 版的，不用配置数据库了，详情访问:
&lt;a class="link" href="https://blog.yexca.net/archives/248"
>
https://blog.yexca.net/archives/248
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>耗时三天写出来了个大概能用的版本，不过没有做错误处理 &lt;del>遇到错误直接重启吧&lt;/del>&lt;/p>
&lt;p>项目地址:
&lt;a class="link" href="https://github.com/yexca/PixivDownloader-MySQL"
target="_blank" rel="noopener"
>
https://github.com/yexca/PixivDownloader-MySQL
&lt;/a>
&lt;/p>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>这要从
&lt;a class="link" href="https://blog.yexca.net/archives/94/"
>
数据库记录已下载画师作品
&lt;/a>
开始说起了，当时我整了个数据库记录我下载过的作品，时间久了之后，觉得这玩意是在做重复作业啊，说到重复作业那必然是计算机来做啊，正好最近不经意间产生了做程序的想法，也正好对其不满意:
&lt;a class="link" href="https://github.com/yexca/yasumiProject"
target="_blank" rel="noopener"
>
https://github.com/yexca/yasumiProject
&lt;/a>
，同时又是过年比较空闲，这就开写&lt;/p></description></item><item><title>2024 年度总结</title><link>https://blog.yexca.net/archives/210/</link><pubDate>Tue, 31 Dec 2024 17:40:09 +0900</pubDate><guid>https://blog.yexca.net/archives/210/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>此文写给我自己看，说是 2024 总结，但也是记录近年的生活感悟与心路历程。文笔不是很好，想表达的东西还有很多，但是不知道怎么整合在一起，就这样吧&lt;/p>
&lt;h2 id="从-2020-到-2024-的经历">从 2020 到 2024 的经历
&lt;/h2>&lt;p>从 2020 年开始，慢慢地总是觉得时间过得好快，哪怕是经历了很多事情，也不会找到 2020 以前的那种可能是认真过每一天或者会觉得时间漫长的感觉。但是当我以客观的角度来分析时，事实上每一年我都经历了许多的事情，也做过不少的事，尤其是今年我经历的也可谓是相当之多&lt;/p></description></item><item><title>用 Hugo 进行博客国际化支持</title><link>https://blog.yexca.net/archives/209/</link><pubDate>Fri, 27 Dec 2024 23:11:45 +0900</pubDate><guid>https://blog.yexca.net/archives/209/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>随着对于信息的浏览增多，往往会有对于其他语言的文章书写需求 (同时现代的作品几乎都是多语言支持)，同时又因为好像自从毕设当时加了个多语言支持，之后做的东西或者设计的东西往往都会想要去进行国际化支持，就
&lt;a class="link" href="https://github.com/yexca/yasumiProject"
target="_blank" rel="noopener"
>
最近写的一个相当于练手的东西
&lt;/a>
也整了多语言支持捏 (不过这并不是我想要的效果，太古老了，想做一个现代点的，另外
&lt;a class="link" href="https://github.com/yexca/yasumiProject-frontend"
target="_blank" rel="noopener"
>
在做啦
&lt;/a>
，希望可以坚持做完)&lt;/p></description></item><item><title>链接</title><link>https://blog.yexca.net/links/</link><pubDate>Fri, 27 Dec 2024 18:20:25 +0900</pubDate><guid>https://blog.yexca.net/links/</guid><description/></item><item><title>GoLang 后端入门</title><link>https://blog.yexca.net/archives/208/</link><pubDate>Sun, 22 Dec 2024 22:07:15 +0800</pubDate><guid>https://blog.yexca.net/archives/208/</guid><description>&lt;p>简单 (非技术框架) 实现的 Go 后端&lt;/p>
&lt;p>~~众所周知，~~后端的开发一般是面向接口的开发，也可以说是 CRUD 工程师，本文章将使用 Go 描述从数据库读出数据，然后返回 JSON 数据&lt;/p></description></item><item><title>GoLang 通道</title><link>https://blog.yexca.net/archives/207/</link><pubDate>Sat, 21 Dec 2024 14:52:55 +0800</pubDate><guid>https://blog.yexca.net/archives/207/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang Series&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道: 本文&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>Go 程 (goroutine) 可以通过 channel 进行传递数据，引用类型 channel 可用于多个 goroutine 通讯，其内部实现了同步，确保并发安全&lt;/p></description></item><item><title>GoLang go 程</title><link>https://blog.yexca.net/archives/206/</link><pubDate>Tue, 17 Dec 2024 21:16:31 +0800</pubDate><guid>https://blog.yexca.net/archives/206/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang Series&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程: 本文&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>进程 -&amp;gt; 线程 -&amp;gt; 协程&lt;/p></description></item><item><title>GoLang 结构体标签</title><link>https://blog.yexca.net/archives/205/</link><pubDate>Wed, 11 Dec 2024 18:31:18 +0800</pubDate><guid>https://blog.yexca.net/archives/205/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang Series&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签: 本文&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>通过结构体标签可以描述该类在某包的作用&lt;/p></description></item><item><title>GoLang 反射</title><link>https://blog.yexca.net/archives/204/</link><pubDate>Tue, 03 Dec 2024 14:07:18 +0800</pubDate><guid>https://blog.yexca.net/archives/204/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang Series&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射: 本文&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>反射指一类应用，它们能够自描述和自控制&lt;/p></description></item><item><title>东京科学大学大学院情报理工学院 2020 问题五 / 科学大院理工学 2020 問題五</title><link>https://blog.yexca.net/archives/203/</link><pubDate>Sun, 01 Dec 2024 18:15:28 +0800</pubDate><guid>https://blog.yexca.net/archives/203/</guid><description>&lt;p>問題一：
&lt;a class="link" href="https://blog.yexca.net/archives/198"
>
https://blog.yexca.net/archives/198
&lt;/a>
&lt;br>
問題二：
&lt;a class="link" href="https://blog.yexca.net/archives/201"
>
https://blog.yexca.net/archives/201
&lt;/a>
&lt;br>
問題三：
&lt;a class="link" href="https://blog.yexca.net/archives/200"
>
https://blog.yexca.net/archives/200
&lt;/a>
&lt;br>
問題四：
&lt;a class="link" href="https://blog.yexca.net/archives/202"
>
https://blog.yexca.net/archives/202
&lt;/a>
&lt;br>
問題五：この文章&lt;/p>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>应该快两周了吧终于把这张试卷看完了，效率不是一般的低啊。整体来看怎么说呢，虽然整体难度是要比中国 408 难度低一点，但考试的风格与侧重点并不相同，具体还是不太好比较。希望下次我的效率可以高点啊&lt;/p></description></item><item><title>东京科学大学大学院情报理工学院 2020 问题四 / 科学大院理工学 2020 問題四</title><link>https://blog.yexca.net/archives/202/</link><pubDate>Thu, 28 Nov 2024 15:51:16 +0800</pubDate><guid>https://blog.yexca.net/archives/202/</guid><description>&lt;p>問題一：
&lt;a class="link" href="https://blog.yexca.net/archives/198"
>
https://blog.yexca.net/archives/198
&lt;/a>
&lt;br>
問題二：
&lt;a class="link" href="https://blog.yexca.net/archives/201"
>
https://blog.yexca.net/archives/201
&lt;/a>
&lt;br>
問題三：
&lt;a class="link" href="https://blog.yexca.net/archives/200"
>
https://blog.yexca.net/archives/200
&lt;/a>
&lt;br>
問題四：この文章&lt;br>
問題五：
&lt;a class="link" href="https://blog.yexca.net/archives/203"
>
https://blog.yexca.net/archives/203
&lt;/a>
&lt;/p>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>一整题都是考拉普拉斯变换的，同时最后一题是应用。如果不知道拉普拉斯变换是比较难快速解题，虽然速度快的话可以做出前两大题以及第三题的前三问 &lt;del>(其实也很多了)&lt;/del>，对于最后两问倒是属于不知道相关原理便不会做了 (我在最后一问倒是写了不知道相关情况如何解题，但考场那种情况下真的可以反应过来吗？)&lt;/p></description></item><item><title>东京科学大学大学院情报理工学院 2020 问题二</title><link>https://blog.yexca.net/archives/201/</link><pubDate>Sun, 24 Nov 2024 22:42:18 +0800</pubDate><guid>https://blog.yexca.net/archives/201/</guid><description>&lt;p>问题一：
&lt;a class="link" href="https://blog.yexca.net/archives/198"
>
https://blog.yexca.net/archives/198
&lt;/a>
&lt;br>
问题二：本文&lt;br>
问题三：
&lt;a class="link" href="https://blog.yexca.net/archives/200"
>
https://blog.yexca.net/archives/200
&lt;/a>
&lt;br>
问题四：
&lt;a class="link" href="https://blog.yexca.net/archives/202"
>
https://blog.yexca.net/archives/202
&lt;/a>
&lt;br>
问题五：
&lt;a class="link" href="https://blog.yexca.net/archives/203"
>
https://blog.yexca.net/archives/203
&lt;/a>
&lt;/p>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>这一大题刚看的时候还以为属于形式语言 (与自动机理论) 呢，实际上手做题发现是数理的内容 &lt;del>(俩都没学过，也都一样)&lt;/del>&lt;br>
总体的难度不是特别难 &lt;del>(因为做过东大试卷吧，看这个的题目都不太难)&lt;/del> 但还是需要掌握较多的理论基础才可解出&lt;/p></description></item><item><title>东京科学大学大学院情报理工学院 2020 问题三 / 科学大院理工学 2020 問題三</title><link>https://blog.yexca.net/archives/200/</link><pubDate>Sat, 23 Nov 2024 20:35:28 +0800</pubDate><guid>https://blog.yexca.net/archives/200/</guid><description>&lt;p>問題一：
&lt;a class="link" href="https://blog.yexca.net/archives/198"
>
https://blog.yexca.net/archives/198
&lt;/a>
&lt;br>
問題二：
&lt;a class="link" href="https://blog.yexca.net/archives/201"
>
https://blog.yexca.net/archives/201
&lt;/a>
&lt;br>
問題三：この文章&lt;br>
問題四：
&lt;a class="link" href="https://blog.yexca.net/archives/202"
>
https://blog.yexca.net/archives/202
&lt;/a>
&lt;br>
問題五：
&lt;a class="link" href="https://blog.yexca.net/archives/203"
>
https://blog.yexca.net/archives/203
&lt;/a>
&lt;/p>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>这个答题是算法题，初看有种要放弃治疗的感觉，但是在做了一遍后可以感觉到难度不是太大，但是需要较高的对于已有算法的理解力。之所以说难度不是太大可能跟我的心里预期有关吧，因为我觉得会不会要设计一个什么算法来着 (我想表达的意思是我并不觉得这个题目简单)&lt;/p></description></item><item><title>内网穿透</title><link>https://blog.yexca.net/archives/199/</link><pubDate>Fri, 22 Nov 2024 22:05:34 +0800</pubDate><guid>https://blog.yexca.net/archives/199/</guid><description>&lt;p>以前写的小文章，系统创建时间 2023.12.01&lt;/p>
&lt;p>现在看着之前写的小文章都不大想发布，但也舍不得删，思来想去还是发布吧，也是自己写的&lt;/p>
&lt;h2 id="ngrok-oneclick">ngrok OneClick
&lt;/h2>&lt;ol>
&lt;li>
&lt;p>到
&lt;a class="link" href="https://ngrok.com/"
target="_blank" rel="noopener"
>
官网
&lt;/a>
注册账号并验证邮箱后会获得 &lt;em>Authtoken&lt;/em>&lt;/p></description></item><item><title>东京科学大学大学院情报理工学院 2020 问题一</title><link>https://blog.yexca.net/archives/198/</link><pubDate>Thu, 21 Nov 2024 15:42:18 +0800</pubDate><guid>https://blog.yexca.net/archives/198/</guid><description>&lt;p>问题一：本文&lt;br>
问题二：
&lt;a class="link" href="https://blog.yexca.net/archives/201"
>
https://blog.yexca.net/archives/201
&lt;/a>
&lt;br>
问题三：
&lt;a class="link" href="https://blog.yexca.net/archives/200"
>
https://blog.yexca.net/archives/200
&lt;/a>
&lt;br>
问题四：
&lt;a class="link" href="https://blog.yexca.net/archives/202"
>
https://blog.yexca.net/archives/202
&lt;/a>
&lt;br>
问题五：
&lt;a class="link" href="https://blog.yexca.net/archives/203"
>
https://blog.yexca.net/archives/203
&lt;/a>
&lt;/p>
&lt;h2 id="まえがき">まえがき
&lt;/h2>&lt;p>本文是首次使用非母语写的文章，又因为 &lt;del>比较懒&lt;/del> 没有参考其他文章，存在用词出错的可能性。&lt;/p>
&lt;p>この文章は初めて母国語じゃない言語で書いて、他の文章を参考しないので、言葉遣いがてきせつではないかも。それで、参考の答えはなくて、文章の答えが自分でできたので、正しくないかも。&lt;/p></description></item><item><title>形式语言与自动机 - 基本概念</title><link>https://blog.yexca.net/archives/197/</link><pubDate>Tue, 19 Nov 2024 22:18:42 +0800</pubDate><guid>https://blog.yexca.net/archives/197/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>Sometimes it&amp;rsquo;s the people who no one imagines anything of who do the things that no one can imagine&lt;/p>
&lt;p>最近从
&lt;a class="link" href="https://www.bilibili.com/video/BV1QMmZYzET2/"
target="_blank" rel="noopener"
>
毕导视频
&lt;/a>
弹幕中得知关于图灵的记录片 The Imitation Game(模拟游戏)，顺便看了一下，对于片中出现的该句话感触颇深，以此当作形式语言与自动机文章的开篇题引&lt;/p></description></item><item><title>Vue 学习</title><link>https://blog.yexca.net/archives/196/</link><pubDate>Fri, 15 Nov 2024 20:48:29 +0800</pubDate><guid>https://blog.yexca.net/archives/196/</guid><description>&lt;h2 id="vue-指令">Vue 指令
&lt;/h2>&lt;p>Vue 会根据不同的指令，针对标签实现不同的功能，指令为带有 &lt;code>v-&lt;/code> 前缀的特殊标签属性&lt;/p>
&lt;h2 id="v-html">v-html
&lt;/h2>&lt;p>用于设置元素的 innerHTML&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">html&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">head&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">meta&lt;/span> &lt;span class="na">charset&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;utf-8&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">title&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>v-html&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">title&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">head&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">div&lt;/span> &lt;span class="na">id&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;app&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">div&lt;/span> &lt;span class="na">v-html&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;link&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&amp;lt;/&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span> &lt;span class="na">src&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;js/vue.js&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kr">const&lt;/span> &lt;span class="nx">app&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="nx">Vue&lt;/span>&lt;span class="p">({&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">el&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="s1">&amp;#39;#app&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">data&lt;/span>&lt;span class="o">:&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">link&lt;/span>&lt;span class="o">:&lt;/span>&lt;span class="s1">&amp;#39;&amp;lt;a href=&amp;#34;https://yexca.net/&amp;#34;&amp;gt;yexca&amp;lt;/a&amp;gt;&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">})&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">html&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="v-show-与-v-if">v-show 与 v-if
&lt;/h2>&lt;table>
&lt;thead>
&lt;tr>
&lt;th>\&lt;/th>
&lt;th>v-show&lt;/th>
&lt;th>v-if&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>作用&lt;/td>
&lt;td>控制元素显示隐藏&lt;/td>
&lt;td>控制元素显示隐藏 (条件渲染)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>语法&lt;/td>
&lt;td>v-show=&amp;ldquo;表达式&amp;rdquo;&lt;/td>
&lt;td>v-if=&amp;ldquo;表达式&amp;rdquo;&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>表达式值&lt;/td>
&lt;td>ture 显示，false 隐藏&lt;/td>
&lt;td>ture 显示，false 隐藏&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>隐藏说明&lt;/td>
&lt;td>通过控制属性 &lt;code>style=&amp;quot;display:none;&amp;quot;&lt;/code>&lt;/td>
&lt;td>直接删除或创建元素&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>场景&lt;/td>
&lt;td>频繁切换&lt;/td>
&lt;td>不频繁切换&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h2 id="v-else-与-v-else-if">v-else 与 v-else-if
&lt;/h2>&lt;p>用于辅助 v-if 进行渲染，需要紧挨着 v-if 一起使用&lt;/p></description></item><item><title>HTML 学习三 - 网页布局</title><link>https://blog.yexca.net/archives/195/</link><pubDate>Sun, 10 Nov 2024 21:36:51 +0800</pubDate><guid>https://blog.yexca.net/archives/195/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>HTML 学习一 - 基础:
&lt;a class="link" href="https://blog.yexca.net/archives/146"
>
https://blog.yexca.net/archives/146
&lt;/a>
&lt;br>
HTML 学习二 - 列表、表格与表单:
&lt;a class="link" href="https://blog.yexca.net/archives/150"
>
https://blog.yexca.net/archives/150
&lt;/a>
&lt;br>
HTML 学习三 - 网页布局:
&lt;a class="link" href="https://blog.yexca.net/archives/195"
>
https://blog.yexca.net/archives/195
&lt;/a>
&lt;/p>
&lt;p>标准流也叫文档流，指的是标签在页面中默认的排布规则，例如：块元素独占一行，行内元素可以一行显示多个&lt;/p></description></item><item><title>2022 SA am2 -21-25</title><link>https://blog.yexca.net/archives/194/</link><pubDate>Fri, 08 Nov 2024 18:29:54 +0800</pubDate><guid>https://blog.yexca.net/archives/194/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am2&lt;/strong>&lt;/p>
&lt;p>01-08:
&lt;a class="link" href="http://127.0.0.1:4000/archives/191"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/191
&lt;/a>
09-15:
&lt;a class="link" href="http://127.0.0.1:4000/archives/192"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/192
&lt;/a>
16-20:
&lt;a class="link" href="http://127.0.0.1:4000/archives/193"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/193
&lt;/a>
21-25:
&lt;a class="link" href="http://127.0.0.1:4000/archives/194"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/194
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>这五题的难度还好，本来解完充满自信来着，不小心看了下下午论述题，我瞬间没自信了 :cry:&lt;/p>
&lt;h2 id="碎碎念">碎碎念
&lt;/h2>&lt;p>思考人生这种事情也确实是空闲的人会思考的，忙起来后也就没时间去胡思乱想了 &lt;del>但忙过头了说不定也会想呢&lt;/del>&lt;br>
我如今应该是意识到自己之前的两点不足了。首先是总觉得随时都能复习；其次是“学无止境”这个观念的误用。&lt;/p></description></item><item><title>2022 SA am2 -16-20</title><link>https://blog.yexca.net/archives/193/</link><pubDate>Wed, 06 Nov 2024 22:05:18 +0800</pubDate><guid>https://blog.yexca.net/archives/193/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am2&lt;/strong>&lt;/p>
&lt;p>01-08:
&lt;a class="link" href="http://127.0.0.1:4000/archives/191"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/191
&lt;/a>
09-15:
&lt;a class="link" href="http://127.0.0.1:4000/archives/192"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/192
&lt;/a>
16-20:
&lt;a class="link" href="http://127.0.0.1:4000/archives/193"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/193
&lt;/a>
21-25:
&lt;a class="link" href="http://127.0.0.1:4000/archives/194"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/194
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>渐渐不会起来了呢，不过还是可控的 (doge&lt;/p>
&lt;h2 id="16">16
&lt;/h2>&lt;p>e シールの説明はどれか。&lt;/p>
&lt;p>ア　インターネット上のゲーム内に限定されたキャラクターのイメージデータの作成者を証明する仕組みの一つである。&lt;/p></description></item><item><title>2022 SA am2 -09-15</title><link>https://blog.yexca.net/archives/192/</link><pubDate>Mon, 04 Nov 2024 23:29:15 +0800</pubDate><guid>https://blog.yexca.net/archives/192/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am2&lt;/strong>&lt;/p>
&lt;p>01-08:
&lt;a class="link" href="http://127.0.0.1:4000/archives/191"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/191
&lt;/a>
09-15:
&lt;a class="link" href="http://127.0.0.1:4000/archives/192"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/192
&lt;/a>
16-20:
&lt;a class="link" href="http://127.0.0.1:4000/archives/193"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/193
&lt;/a>
21-25:
&lt;a class="link" href="http://127.0.0.1:4000/archives/194"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/194
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>从中间的题目开始，难度开始上来了，几乎都是没有学过的了，可以收回之前说的我觉得可以过的言论了，不过要是真不学什么东西直接过道还不如不去考呢，就算考不过，但学到的知识可以影响自己 (怎么又有要开始的迹象了)&lt;/p></description></item><item><title>2022 SA am2 -01-08</title><link>https://blog.yexca.net/archives/191/</link><pubDate>Sun, 03 Nov 2024 23:11:52 +0800</pubDate><guid>https://blog.yexca.net/archives/191/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am2&lt;/strong>&lt;/p>
&lt;p>01-08:
&lt;a class="link" href="http://127.0.0.1:4000/archives/191"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/191
&lt;/a>
09-15:
&lt;a class="link" href="http://127.0.0.1:4000/archives/192"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/192
&lt;/a>
16-20:
&lt;a class="link" href="http://127.0.0.1:4000/archives/193"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/193
&lt;/a>
21-25:
&lt;a class="link" href="http://127.0.0.1:4000/archives/194"
target="_blank" rel="noopener"
>
http://127.0.0.1:4000/archives/194
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>这专门试卷难度倒是还行，不过还是会有我学过的东西，相必经过一定的学习后我应该可以通过客观题，希望早点做完后看看下午题，这才是我合格的关键&lt;/p></description></item><item><title>2022 SA am1 -16-30</title><link>https://blog.yexca.net/archives/190/</link><pubDate>Mon, 28 Oct 2024 19:04:14 +0800</pubDate><guid>https://blog.yexca.net/archives/190/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am1&lt;/strong>&lt;/p>
&lt;p>01-02:
&lt;a class="link" href="https://blog.yexca.net/archives/184"
>
https://blog.yexca.net/archives/184
&lt;/a>
&lt;br>
03-05:
&lt;a class="link" href="https://blog.yexca.net/archives/185"
>
https://blog.yexca.net/archives/185
&lt;/a>
&lt;br>
06-10:
&lt;a class="link" href="https://blog.yexca.net/archives/186"
>
https://blog.yexca.net/archives/186
&lt;/a>
&lt;br>
11-15:
&lt;a class="link" href="https://blog.yexca.net/archives/189"
>
https://blog.yexca.net/archives/189
&lt;/a>
&lt;br>
16-30:
&lt;a class="link" href="https://blog.yexca.net/archives/190"
>
https://blog.yexca.net/archives/190
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>整张试卷做下来大部分是软件设计师的感觉，估计有些共通的科目对软件开发要求较低吧，专门的试卷估计会难一点。大部分题目专有名词看不懂，但是翻译过来后是可以会做的，专有名词的记忆很重要嘛&lt;/p></description></item><item><title>2022 SA am1 -11-15</title><link>https://blog.yexca.net/archives/189/</link><pubDate>Sat, 26 Oct 2024 21:41:16 +0800</pubDate><guid>https://blog.yexca.net/archives/189/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am1&lt;/strong>&lt;/p>
&lt;p>01-02:
&lt;a class="link" href="https://blog.yexca.net/archives/184"
>
https://blog.yexca.net/archives/184
&lt;/a>
&lt;br>
03-05:
&lt;a class="link" href="https://blog.yexca.net/archives/185"
>
https://blog.yexca.net/archives/185
&lt;/a>
&lt;br>
06-10:
&lt;a class="link" href="https://blog.yexca.net/archives/186"
>
https://blog.yexca.net/archives/186
&lt;/a>
&lt;br>
11-15:
&lt;a class="link" href="https://blog.yexca.net/archives/189"
>
https://blog.yexca.net/archives/189
&lt;/a>
&lt;br>
16-30:
&lt;a class="link" href="https://blog.yexca.net/archives/190"
>
https://blog.yexca.net/archives/190
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;h2 id="碎碎念">碎碎念
&lt;/h2>&lt;p>最近眼睛越来越疼了，看屏幕可能一小时就开始了，而且看东西很模糊，感觉需要休息眼睛了，不然再近视看不见真的会很难受 (要是不疼的话我应该都能更新完这张试卷了)&lt;/p></description></item><item><title>东京大学大学院理工学 数学 2020 问题三 / 東大院理工学 数学 2020 問題三</title><link>https://blog.yexca.net/archives/188/</link><pubDate>Fri, 25 Oct 2024 19:24:36 +0800</pubDate><guid>https://blog.yexca.net/archives/188/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>日本語のタイトルを書いても、この文章は主に日本語の内容ではありません。&lt;del>時間があれば追加かもしれません&lt;/del>&lt;/p>
&lt;p>题目一：
&lt;a class="link" href="https://blog.yexca.net/archives/183"
>
https://blog.yexca.net/archives/183
&lt;/a>
&lt;/p>
&lt;p>题目二：
&lt;a class="link" href="https://blog.yexca.net/archives/187"
>
https://blog.yexca.net/archives/187
&lt;/a>
&lt;/p>
&lt;p>题目三：本文&lt;/p>
&lt;p>全部做下来的感觉就是可能因为是多专业共用的数学试题吧，线代不知道，高数和概率论几乎就是引导这让考生完成某一结论的证明或者了解某项东西。其中高数是弧长参数化，线代是 37% 法则。而如果知道这些结论会很好解出题目，事先没学过的话做出来的人是真厉害。至少让我从零开始那是包挂的&lt;/p></description></item><item><title>东京大学大学院理工学 数学 2020 问题二 / 東大院理工学 数学 2020 問題二</title><link>https://blog.yexca.net/archives/187/</link><pubDate>Thu, 24 Oct 2024 22:46:25 +0800</pubDate><guid>https://blog.yexca.net/archives/187/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>日本語のタイトルを書いても、この文章は主に日本語の内容ではありません。&lt;del>時間があれば追加かもしれません&lt;/del>&lt;/p>
&lt;p>题目一：
&lt;a class="link" href="https://blog.yexca.net/archives/183"
>
https://blog.yexca.net/archives/183
&lt;/a>
&lt;/p>
&lt;p>题目二：本文&lt;/p>
&lt;p>题目三：
&lt;a class="link" href="https://blog.yexca.net/archives/188"
>
https://blog.yexca.net/archives/188
&lt;/a>
&lt;/p>
&lt;p>唉，干劲总是会被现实所打败，不过这次我伤心的时间倒是变短了，希望慢慢的可以好起来&lt;/p></description></item><item><title>2022 SA am1 -06-10</title><link>https://blog.yexca.net/archives/186/</link><pubDate>Tue, 22 Oct 2024 15:37:34 +0800</pubDate><guid>https://blog.yexca.net/archives/186/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am1&lt;/strong>&lt;/p>
&lt;p>01-02:
&lt;a class="link" href="https://blog.yexca.net/archives/184"
>
https://blog.yexca.net/archives/184
&lt;/a>
&lt;br>
03-05:
&lt;a class="link" href="https://blog.yexca.net/archives/185"
>
https://blog.yexca.net/archives/185
&lt;/a>
&lt;br>
06-10:
&lt;a class="link" href="https://blog.yexca.net/archives/186"
>
https://blog.yexca.net/archives/186
&lt;/a>
&lt;br>
11-15:
&lt;a class="link" href="https://blog.yexca.net/archives/189"
>
https://blog.yexca.net/archives/189
&lt;/a>
&lt;br>
16-30:
&lt;a class="link" href="https://blog.yexca.net/archives/190"
>
https://blog.yexca.net/archives/190
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>可能因为是多场考试共用的试卷吧，问题还是挺基础的，感觉像软考中级软件设计师的程度。不过一共有四场考试呢，也不知道啥时候能把这第一个写完呢&lt;/p></description></item><item><title>2022 SA am1 -03-05</title><link>https://blog.yexca.net/archives/185/</link><pubDate>Mon, 21 Oct 2024 20:35:34 +0800</pubDate><guid>https://blog.yexca.net/archives/185/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am1&lt;/strong>&lt;/p>
&lt;p>01-02:
&lt;a class="link" href="https://blog.yexca.net/archives/184"
>
https://blog.yexca.net/archives/184
&lt;/a>
&lt;br>
03-05:
&lt;a class="link" href="https://blog.yexca.net/archives/185"
>
https://blog.yexca.net/archives/185
&lt;/a>
&lt;br>
06-10:
&lt;a class="link" href="https://blog.yexca.net/archives/186"
>
https://blog.yexca.net/archives/186
&lt;/a>
&lt;br>
11-15:
&lt;a class="link" href="https://blog.yexca.net/archives/189"
>
https://blog.yexca.net/archives/189
&lt;/a>
&lt;br>
16-30:
&lt;a class="link" href="https://blog.yexca.net/archives/190"
>
https://blog.yexca.net/archives/190
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;h2 id="碎碎念">碎碎念
&lt;/h2>&lt;p>星期一总是很累，在经历了周末的休息后总会在今天提不起精神。不过今天也不知道怎么回事我突然就一改之前快抑郁的感觉，尽管什么也没有做来着，突然就变得及其乐观。情感或者状态确实很奇妙&lt;/p></description></item><item><title>2022 SA am1 -01-02</title><link>https://blog.yexca.net/archives/184/</link><pubDate>Sun, 20 Oct 2024 20:19:11 +0800</pubDate><guid>https://blog.yexca.net/archives/184/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;blockquote>
&lt;p>&lt;strong>2022 SA am1&lt;/strong>&lt;/p>
&lt;p>01-02:
&lt;a class="link" href="https://blog.yexca.net/archives/184"
>
https://blog.yexca.net/archives/184
&lt;/a>
&lt;br>
03-05:
&lt;a class="link" href="https://blog.yexca.net/archives/185"
>
https://blog.yexca.net/archives/185
&lt;/a>
&lt;br>
06-10:
&lt;a class="link" href="https://blog.yexca.net/archives/186"
>
https://blog.yexca.net/archives/186
&lt;/a>
&lt;br>
11-15:
&lt;a class="link" href="https://blog.yexca.net/archives/189"
>
https://blog.yexca.net/archives/189
&lt;/a>
&lt;br>
16-30:
&lt;a class="link" href="https://blog.yexca.net/archives/190"
>
https://blog.yexca.net/archives/190
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>那么关于这篇文章，是我想要挑战一下，也没想着会成功，去参加系统架构师考试，也就是计算机专业技术与软件专业技术资格的高级考试，这个考试拿下来的证和学习到的知识可能大多数编码的时候用不上 (其实能用上只是想不到)，但有总比没有好，我尽量可以把这张试卷做完吧，这应该也可以慢慢将我从梦中拉回吧&lt;/p></description></item><item><title>东京大学大学院理工学 数学 2020 问题一 / 東大院理工学 数学 2020 問題一</title><link>https://blog.yexca.net/archives/183/</link><pubDate>Mon, 14 Oct 2024 21:37:58 +0800</pubDate><guid>https://blog.yexca.net/archives/183/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>日本語のタイトルを書いても、この文章は主に日本語の内容ではありません。&lt;del>時間があれば追加かもしれません&lt;/del>&lt;/p>
&lt;p>题目一：本文&lt;/p>
&lt;p>题目二：
&lt;a class="link" href="https://blog.yexca.net/archives/187"
>
https://blog.yexca.net/archives/187
&lt;/a>
&lt;/p>
&lt;p>题目三：
&lt;a class="link" href="https://blog.yexca.net/archives/188"
>
https://blog.yexca.net/archives/188
&lt;/a>
&lt;/p>
&lt;p>最近几年总是会觉得自己在学习上没有任何的收获，尽管自己可能确实听了课程。于是我便想着尝试去做题目 (是的，学习却不做题这种可能不是特别正常的现象会让当时的我觉得很正常，&lt;del>应该是太懒了&lt;/del>)，结果这一做题目，怎么说呢，做我是不会，搜怎么做我倒是有上过相关课程的印象，于是我几乎是重新学了一遍的同时解完了该题&lt;/p></description></item><item><title>2024 装机记录</title><link>https://blog.yexca.net/archives/182/</link><pubDate>Wed, 02 Oct 2024 21:35:24 +0800</pubDate><guid>https://blog.yexca.net/archives/182/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最近因为替换硬碟而重新装了电脑系统，当我掏出那多年未动的 U 盘时里面的软件多少有点过时，有些是已经无法在新系统上运行的，还有好多我已经使用了相同功能的替代品，以及使用了一些新的软件，遂写此文章记录装机用到的软件&lt;/p></description></item><item><title>宝塔面板搭建 CuteOne</title><link>https://blog.yexca.net/archives/181/</link><pubDate>Tue, 10 Sep 2024 23:06:59 +0800</pubDate><guid>https://blog.yexca.net/archives/181/</guid><description>&lt;p>文章写于 2022.11.30，因早已不使用该面板与 CuteOne，文章并无最新适配，可能无法复现&lt;/p>
&lt;p>同时当时文章并未写完，我无相关需求，仅记录&lt;/p>
&lt;h2 id="搭建过程">搭建过程
&lt;/h2>&lt;p>两篇文章&lt;/p></description></item><item><title>基于 Onedrive 建站 (oneindex)</title><link>https://blog.yexca.net/archives/180/</link><pubDate>Tue, 27 Aug 2024 11:00:24 +0800</pubDate><guid>https://blog.yexca.net/archives/180/</guid><description>&lt;p>文章写于 2022.05.09，文章并无最新适配，可能无法复现。另推荐使用较新的项目&lt;/p>
&lt;p>通过 Onedrive 可以建立网盘网站，例如&lt;del>我的VRChat网盘&lt;/del>已经没了，还可以直接建立网页，或者图床&lt;/p></description></item><item><title>宝塔面板搭建 OLAINDEX</title><link>https://blog.yexca.net/archives/179/</link><pubDate>Fri, 23 Aug 2024 17:14:26 +0800</pubDate><guid>https://blog.yexca.net/archives/179/</guid><description>&lt;p>文章写于 2022.06.09，因早已不使用该面板与 OLAINDEX，文章并无最新适配，可能无法复现&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>不建议使用宝塔面板&lt;/strong>&lt;/p>
&lt;/blockquote>
&lt;h2 id="环境要求">环境要求
&lt;/h2>&lt;p>PHP拓展要求&lt;/p>
&lt;ul>
&lt;li>PHP &amp;gt;= 7.4&lt;/li>
&lt;li>PHP OpenSSL 扩展&lt;/li>
&lt;li>PHP PDO 扩展&lt;/li>
&lt;li>PHP Mbstring 扩展&lt;/li>
&lt;li>PHP Tokenizer 扩展&lt;/li>
&lt;li>PHP XML 扩展&lt;/li>
&lt;li>PHP Ctype 扩展&lt;/li>
&lt;li>PHP JSON 扩展&lt;/li>
&lt;li>PHP BCMath 扩展&lt;/li>
&lt;li>PHP Fileinfo 扩展&lt;/li>
&lt;/ul>
&lt;p>最低安装标准 &lt;code>nginx+php&lt;/code>&lt;/p></description></item><item><title>宝塔面板搭建 ZFile</title><link>https://blog.yexca.net/archives/178/</link><pubDate>Fri, 16 Aug 2024 14:43:25 +0800</pubDate><guid>https://blog.yexca.net/archives/178/</guid><description>&lt;p>文章写于 2022.06.12，本不想发布，但见文章写的较为完整想着发出来留念吧。因早已不使用该面板与 ZFile，文章并无最新适配，可能无法复现&lt;/p></description></item><item><title>Hexo 安装与使用</title><link>https://blog.yexca.net/archives/177/</link><pubDate>Fri, 09 Aug 2024 08:49:53 +0800</pubDate><guid>https://blog.yexca.net/archives/177/</guid><description>&lt;p>最近服务器快过期了，便想着把 VRC Blog 迁移到 Github 上，于是便想着看看有什么好的主题没，刚开始是想着现在用的 Typecho 主题是从 Jekyll 移植，但 &lt;del>半年前&lt;/del> 去搜索找不到了，然后最近又有点想了解 Hexo，找了半天主题又想到了之前挺喜欢的 Argon 好像有 Hexo 来着，然后便有了这篇文章&lt;/p></description></item><item><title>算法 n-皇后问题 (回溯法)</title><link>https://blog.yexca.net/archives/176/</link><pubDate>Sun, 28 Jul 2024 14:26:26 +0800</pubDate><guid>https://blog.yexca.net/archives/176/</guid><description>&lt;h2 id="问题描述">问题描述
&lt;/h2>&lt;p>n-皇后问题是在 n 行 n 列的棋盘上放置 n 个皇后，使得皇后彼此之间不受攻击，其规则是任意两个皇后不在同一行、同一列和相同的对角线上 (也就算国际象棋的皇后移动范围)&lt;/p></description></item><item><title>Typecho HTTPS 无法登录访问后台</title><link>https://blog.yexca.net/archives/175/</link><pubDate>Fri, 26 Jul 2024 22:22:22 +0800</pubDate><guid>https://blog.yexca.net/archives/175/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>之前在移植 typecho 到 Docker 容器后，在开启 HTTPS 后登录后台将会报错，而将 HTTPS 关闭后则可以正常访问。因为在之前非 Docker 部署的时候可以正常访问，我以为是 Docker 网络的问题，而当时的修改是一次性的，不会再进行更新，所以我在关闭 HTTPS 修改完成后便不再管理。如今再次使用 typecho 再次遇到相同问题，考虑到需要更新文章，遂寻解决之法&lt;/p></description></item><item><title>ElementUI</title><link>https://blog.yexca.net/archives/174/</link><pubDate>Mon, 03 Jun 2024 18:04:58 +0800</pubDate><guid>https://blog.yexca.net/archives/174/</guid><description>&lt;p>ElementUI 是饿了么团队开发的，一套为开发者、设计师和产品经理准备的基于 Vue2.0 的桌面端组件库&lt;/p>
&lt;p>组件是组成网页的部件，例如超链接、按钮、图片、表格、表单、分页条等&lt;/p></description></item><item><title>简单Vue项目</title><link>https://blog.yexca.net/archives/173/</link><pubDate>Tue, 28 May 2024 16:22:15 +0800</pubDate><guid>https://blog.yexca.net/archives/173/</guid><description>&lt;p>早期前后端混合开发，沟通成本高，分工不明确，不便管理，不便维护扩展&lt;/p>
&lt;p>当前主流的开发模式为前后端分离，通过接口文档&lt;/p>
&lt;h2 id="前后端分离开发">前后端分离开发
&lt;/h2>&lt;p>前端根据接口文档传输参数根据响应数据解析，后端根据接口文档接收参数并响应&lt;/p></description></item><item><title>博客运行时间</title><link>https://blog.yexca.net/archives/172/</link><pubDate>Tue, 14 May 2024 11:08:25 +0800</pubDate><guid>https://blog.yexca.net/archives/172/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>毕业论文真是折磨呢。这是什么时候的文章呢，这个文件创建时间 2023.11.30 而修改时间 2022.09.18，我看不懂，但我大受震撼&lt;/p>
&lt;h2 id="代码">代码
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">function&lt;/span> &lt;span class="nx">secondToDate&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="o">!&lt;/span>&lt;span class="nx">second&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">var&lt;/span> &lt;span class="nx">time&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="nb">Array&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="mi">365&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">24&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">time&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">parseInt&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">365&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">24&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">second&lt;/span> &lt;span class="o">%=&lt;/span> &lt;span class="mi">365&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">24&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="mi">24&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">time&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">parseInt&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mi">24&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">second&lt;/span> &lt;span class="o">%=&lt;/span> &lt;span class="mi">24&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">time&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">parseInt&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">second&lt;/span> &lt;span class="o">%=&lt;/span> &lt;span class="mi">3600&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="mi">60&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">time&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">3&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">parseInt&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mi">60&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">second&lt;/span> &lt;span class="o">%=&lt;/span> &lt;span class="mi">60&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="nx">second&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">time&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">4&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">second&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="nx">time&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span> &lt;span class="na">type&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;text/javascript&amp;#34;&lt;/span> &lt;span class="na">language&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;javascript&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">function&lt;/span> &lt;span class="nx">setTime&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">var&lt;/span> &lt;span class="nx">create_time&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">Math&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">round&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="k">new&lt;/span> &lt;span class="nb">Date&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nb">Date&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">UTC&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">2021&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">11&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">6&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">14&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">15&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">19&lt;/span>&lt;span class="p">)).&lt;/span>&lt;span class="nx">getTime&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mi">1000&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kd">var&lt;/span> &lt;span class="nx">timestamp&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">Math&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">round&lt;/span>&lt;span class="p">((&lt;/span>&lt;span class="k">new&lt;/span> &lt;span class="nb">Date&lt;/span>&lt;span class="p">().&lt;/span>&lt;span class="nx">getTime&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">8&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">60&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">60&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="mi">1000&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="mi">1000&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">currentTime&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">secondToDate&lt;/span>&lt;span class="p">((&lt;/span>&lt;span class="nx">timestamp&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="nx">create_time&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">currentTimeHtml&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s1">&amp;#39;This Blog has running: &amp;lt;br/&amp;gt;&amp;#39;&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="nx">currentTime&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="s1">&amp;#39; y &amp;#39;&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="nx">currentTime&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="s1">&amp;#39; d &amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">+&lt;/span> &lt;span class="nx">currentTime&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="s1">&amp;#39; h &amp;#39;&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="nx">currentTime&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">3&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="s1">&amp;#39; m &amp;#39;&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="nx">currentTime&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">4&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">+&lt;/span> &lt;span class="s1">&amp;#39; s&amp;#39;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nb">document&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">getElementById&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;htmer_time&amp;#34;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">innerHTML&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">currentTimeHtml&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span> &lt;span class="nx">setInterval&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">setTime&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1000&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="引用">引用
&lt;/h2>&lt;p>在想放入的地方加入&lt;/p></description></item><item><title>Gateway 服务网关</title><link>https://blog.yexca.net/archives/171/</link><pubDate>Sun, 05 May 2024 00:54:52 +0800</pubDate><guid>https://blog.yexca.net/archives/171/</guid><description>&lt;p>Gateway 是所有微服务的统一入口，有以下功能&lt;/p>
&lt;ul>
&lt;li>身份认证和权限检验：网关作为微服务入口，需要校验用户是是否有请求资格，如果没有则进行拦截&lt;/li>
&lt;li>请求路由、负载均衡：一切请求都必须先经过gateway，但网关不处理业务，而是根据某种规则，把请求转发到某个微服务，这个过程叫做路由。当然路由的目标服务有多个时，还需要做负载均衡&lt;/li>
&lt;li>请求限流：当请求流量过高时，在网关中按照下流的微服务能够接受的速度来放行请求，避免服务压力过大&lt;/li>
&lt;/ul>
&lt;p>SpringCloud 的网关实现有两种&lt;/p></description></item><item><title>Feign 远程调用</title><link>https://blog.yexca.net/archives/170/</link><pubDate>Fri, 03 May 2024 23:11:52 +0800</pubDate><guid>https://blog.yexca.net/archives/170/</guid><description>&lt;p>Feign是一个声明式的 Http 客户端，Github：
&lt;a class="link" href="https://github.com/OpenFeign/feign"
target="_blank" rel="noopener"
>
https://github.com/OpenFeign/feign
&lt;/a>
&lt;/p>
&lt;h2 id="简单使用">简单使用
&lt;/h2>&lt;p>引入依赖&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-xml" data-lang="xml">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;groupId&amp;gt;&lt;/span>org.springframework.cloud&lt;span class="nt">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;artifactId&amp;gt;&lt;/span>spring-cloud-starter-openfeign&lt;span class="nt">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>在启动类添加注解开启 Feign 的功能&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-java" data-lang="java">&lt;span class="line">&lt;span class="cl">&lt;span class="nd">@EnableFeignClients&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="nd">@SpringBootApplication&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>编写 Feign 客户端&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-java" data-lang="java">&lt;span class="line">&lt;span class="cl">&lt;span class="nd">@FeignClient&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;userService&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="kd">public&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kd">interface&lt;/span> &lt;span class="nc">UserClient&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nd">@GetMapping&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;/user/{id}&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="n">User&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="nf">findById&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nd">@PathVariable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;id&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">Long&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="n">id&lt;/span>&lt;span class="p">);&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>替换 RestTemplate&lt;/p></description></item><item><title>Nacos 注册中心</title><link>https://blog.yexca.net/archives/169/</link><pubDate>Thu, 02 May 2024 22:36:17 +0800</pubDate><guid>https://blog.yexca.net/archives/169/</guid><description>&lt;p>需先安装软件，官网：
&lt;a class="link" href="https://nacos.io/zh-cn/"
target="_blank" rel="noopener"
>
https://nacos.io/zh-cn/
&lt;/a>
&lt;/p>
&lt;p>在 &lt;code>conf/application.properties&lt;/code> 文件中可以更改端口，默认为 8848&lt;/p>
&lt;h2 id="注册服务">注册服务
&lt;/h2>&lt;p>父工程中添加管理依赖&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-xml" data-lang="xml">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;groupId&amp;gt;&lt;/span>com.alibaba.cloud&lt;span class="nt">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;artifactId&amp;gt;&lt;/span>spring-cloud-alibaba-dependencies&lt;span class="nt">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;version&amp;gt;&lt;/span>2.2.6.RELEASE&lt;span class="nt">&amp;lt;/version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;type&amp;gt;&lt;/span>pom&lt;span class="nt">&amp;lt;/type&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;scope&amp;gt;&lt;/span>import&lt;span class="nt">&amp;lt;/scope&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>注释掉 Eureka 的依赖，并添加 Nacos 客户端的依赖&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-xml" data-lang="xml">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;groupId&amp;gt;&lt;/span>com.alibaba.cloud&lt;span class="nt">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;artifactId&amp;gt;&lt;/span>spring-cloud-starter-alibaba-nacos-discovery&lt;span class="nt">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>修改 application.yml，添加 Nacos 地址，注释 Eureka 地址&lt;/p></description></item><item><title>Ribbon 负载均衡</title><link>https://blog.yexca.net/archives/168/</link><pubDate>Sun, 28 Apr 2024 15:50:15 +0800</pubDate><guid>https://blog.yexca.net/archives/168/</guid><description>&lt;p>消费者发起请求会被 Ribbon 拦截，Ribbon 从 Eureka 拉取提供者列表，Eureka 返回提供者列表，Ribbon 根据 IRule 选择服务器发起请求&lt;/p>
&lt;p>详细拦截：请求-&amp;gt;DynamicServerListLoadBalancer (获取url中的服务id,userService)-&amp;gt;DynamicServerListLoadBalancer-&amp;gt;Eureka-&amp;gt;DynamicServerListLoadBalancer-&amp;gt;IRule-&amp;gt;DynamicServerListLoadBalancer -&amp;gt;发起请求&lt;/p></description></item><item><title>CSS 盒子模型</title><link>https://blog.yexca.net/archives/167/</link><pubDate>Sat, 13 Apr 2024 22:06:58 +0800</pubDate><guid>https://blog.yexca.net/archives/167/</guid><description>&lt;h2 id="显示模式">显示模式
&lt;/h2>&lt;p>显示模式即标签的显示方式，用于布局网页的时候，根据标签的显示模式选择合适的标签摆放内容&lt;/p>
&lt;ul>
&lt;li>块级元素 (例如 div)
&lt;ul>
&lt;li>独占一行&lt;/li>
&lt;li>宽度默认是父级的 100%&lt;/li>
&lt;li>添加宽高属性生效&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>行内元素 (例如 span)
&lt;ul>
&lt;li>一行可以显示多个&lt;/li>
&lt;li>设置宽高属性不生效&lt;/li>
&lt;li>宽高尺寸由内容撑开&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>行内块元素 (例如 img)
&lt;ul>
&lt;li>一行可以显示多个&lt;/li>
&lt;li>设置宽高属性生效&lt;/li>
&lt;li>宽高尺寸也可以由内容撑开&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ul>
&lt;p>可以通过 CSS 属性 &lt;code>display&lt;/code> 转换显示模式，取值为：&lt;/p></description></item><item><title>CSS 背景属性</title><link>https://blog.yexca.net/archives/166/</link><pubDate>Wed, 10 Apr 2024 16:21:51 +0800</pubDate><guid>https://blog.yexca.net/archives/166/</guid><description>&lt;p>背景属性有以下这些&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>描述&lt;/th>
&lt;th>属性&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>背景色&lt;/td>
&lt;td>background-color&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>背景图&lt;/td>
&lt;td>background-image&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>背景图平铺方式&lt;/td>
&lt;td>background-repeat&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>背景图位置&lt;/td>
&lt;td>background-position&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>背景图缩放&lt;/td>
&lt;td>background-size&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>背景图固定&lt;/td>
&lt;td>background-attachment&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>背景图复合属性&lt;/td>
&lt;td>background&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h2 id="背景图">背景图
&lt;/h2>&lt;p>网页中使用背景图实现装饰性的图片效果&lt;/p></description></item><item><title>CSS 文字控制属性</title><link>https://blog.yexca.net/archives/165/</link><pubDate>Thu, 14 Mar 2024 21:07:15 +0800</pubDate><guid>https://blog.yexca.net/archives/165/</guid><description>&lt;p>文字控制属性可控制的内容如下&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>名称&lt;/th>
&lt;th>属性&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>字体大小&lt;/td>
&lt;td>font-size&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>字体粗细&lt;/td>
&lt;td>font-weight&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>字体倾斜&lt;/td>
&lt;td>font-style&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>行高&lt;/td>
&lt;td>line-height&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>字体族&lt;/td>
&lt;td>font-family&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>字体复合属性&lt;/td>
&lt;td>font&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>文本缩进&lt;/td>
&lt;td>text-indent&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>文本对齐&lt;/td>
&lt;td>text-align&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>修饰线&lt;/td>
&lt;td>text-decoration&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>颜色&lt;/td>
&lt;td>color&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="字体大小">字体大小
&lt;/h3>&lt;p>属性值为文字尺寸，单位一般为 px&lt;/p></description></item><item><title>CSS 三大特性</title><link>https://blog.yexca.net/archives/164/</link><pubDate>Mon, 11 Mar 2024 16:38:34 +0800</pubDate><guid>https://blog.yexca.net/archives/164/</guid><description>&lt;p>CSS 三大特性：继承性、层叠性、优先级&lt;/p>
&lt;h2 id="继承性">继承性
&lt;/h2>&lt;p>子级默认继承父级的文字控制属性，若子级有自己的样式则不继承&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">style&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">body&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">font&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">30&lt;/span>&lt;span class="kt">px&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">0.5&lt;/span> &lt;span class="err">楷体&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">color&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">aqua&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">style&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>div&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">div&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">p&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>p&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">p&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">span&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>span&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">span&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">a&lt;/span> &lt;span class="na">href&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;#&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>不继承颜色&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">a&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="层叠性">层叠性
&lt;/h2>&lt;p>选择器类型相同时：&lt;/p></description></item><item><title>CSS 选择器</title><link>https://blog.yexca.net/archives/163/</link><pubDate>Sat, 02 Mar 2024 17:15:35 +0800</pubDate><guid>https://blog.yexca.net/archives/163/</guid><description>&lt;h2 id="css-引入方式">CSS 引入方式
&lt;/h2>&lt;p>CSS 有三种引入方式，第一种为内部样式表，此方式仅学习使用&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">html&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">head&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">title&lt;/span>&lt;span class="p">&amp;gt;&amp;lt;/&lt;/span>&lt;span class="nt">title&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">style&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c">/* 此处写 CSS */&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">style&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">head&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">html&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>第二种为行内样式，一般配合 JavaScript 使用&lt;/p></description></item><item><title>GoLang 面向对象</title><link>https://blog.yexca.net/archives/162/</link><pubDate>Fri, 01 Mar 2024 15:35:38 +0800</pubDate><guid>https://blog.yexca.net/archives/162/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang Series&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象: 本文&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;p>通过使用结构体构建类与对象的概念&lt;/p></description></item><item><title>注册中心 - Eureka</title><link>https://blog.yexca.net/archives/161/</link><pubDate>Thu, 29 Feb 2024 16:53:15 +0800</pubDate><guid>https://blog.yexca.net/archives/161/</guid><description>&lt;p>引入注册中心之前先引入提供者与消费者概念&lt;/p>
&lt;h2 id="提供者与消费者">提供者与消费者
&lt;/h2>&lt;p>服务提供者：一次业务中，被其它微服务调用的服务。（提供接口给其它微服务）&lt;/p>
&lt;p>服务消费者：一次业务中，调用其它微服务的服务。（调用其它微服务提供的接口）&lt;/p></description></item><item><title>GoLang 切片</title><link>https://blog.yexca.net/archives/160/</link><pubDate>Tue, 27 Feb 2024 20:00:00 +0800</pubDate><guid>https://blog.yexca.net/archives/160/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang 系列&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片: 本文&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p></description></item><item><title>Linux 定时任务 crontab</title><link>https://blog.yexca.net/archives/159/</link><pubDate>Mon, 26 Feb 2024 21:34:15 +0800</pubDate><guid>https://blog.yexca.net/archives/159/</guid><description>&lt;p>&lt;del>这篇文章还是有点久远的，书写习惯和现在不同，甚至看着有点不习惯&lt;/del>&lt;/p>
&lt;p>通过 crontab 命令，我们可以在固定的间隔时间执行指定的系统指令或 shell script 脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合&lt;/p></description></item><item><title>Hi SpringCloud</title><link>https://blog.yexca.net/archives/158/</link><pubDate>Sun, 25 Feb 2024 17:56:54 +0800</pubDate><guid>https://blog.yexca.net/archives/158/</guid><description>&lt;h2 id="服务架构">服务架构
&lt;/h2>&lt;h3 id="单体架构">单体架构
&lt;/h3>&lt;p>将业务的所有功能集中在一个项目中开发，打包一个包部署&lt;/p>
&lt;p>优点：架构简单、扩展性差、部署成本低，适合小型项目&lt;/p>
&lt;p>缺点：耦合度高&lt;/p>
&lt;h3 id="分布式架构">分布式架构
&lt;/h3>&lt;p>根据业务功能对系统进行拆分，每个业务模块作为独立项目开发，称为一个服务&lt;/p></description></item><item><title>Redis</title><link>https://blog.yexca.net/archives/157/</link><pubDate>Fri, 23 Feb 2024 16:40:34 +0800</pubDate><guid>https://blog.yexca.net/archives/157/</guid><description>&lt;blockquote>
&lt;p>Redis 基础: 本文&lt;br>
Redis 分布式缓存:
&lt;a class="link" href="https://blog.yexca.net/archives/225/"
>
https://blog.yexca.net/archives/225/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>Redis 是一个基于内存的 key-value 结构数据库，是互联网技术领域使用最为广泛的存储中间件&lt;/p>
&lt;ul>
&lt;li>官网：
&lt;a class="link" href="https://redis.io"
target="_blank" rel="noopener"
>
https://redis.io
&lt;/a>
&lt;/li>
&lt;li>中文网：
&lt;a class="link" href="https://www.redis.net.cn/"
target="_blank" rel="noopener"
>
https://www.redis.net.cn/
&lt;/a>
&lt;/li>
&lt;/ul>
&lt;p>Redis 基于内存存储，读写性能高，适合存储热点数据 (商品、资讯、新闻) 。是用 C 语言开发的一个开源的高性能键值对数据库，存储 value 类型比较丰富，也被称为结构化的 NoSql (Not Only SQL) 数据库&lt;/p></description></item><item><title>GoLang 函数</title><link>https://blog.yexca.net/archives/156/</link><pubDate>Thu, 22 Feb 2024 04:47:28 +0800</pubDate><guid>https://blog.yexca.net/archives/156/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang 系列&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数: 本文&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p></description></item><item><title>GoLang 变量与常量</title><link>https://blog.yexca.net/archives/155/</link><pubDate>Tue, 20 Feb 2024 06:41:18 +0800</pubDate><guid>https://blog.yexca.net/archives/155/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang 系列&lt;/strong>&lt;/p>
&lt;p>Hello GoLang:
&lt;a class="link" href="https://blog.yexca.net/archives/154"
>
https://blog.yexca.net/archives/154
&lt;/a>
&lt;br>
GoLang (var and const) 变量与常量: 本文&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p></description></item><item><title>Hello GoLang</title><link>https://blog.yexca.net/archives/154/</link><pubDate>Mon, 19 Feb 2024 07:58:37 +0800</pubDate><guid>https://blog.yexca.net/archives/154/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>Golang 系列&lt;/strong>&lt;/p>
&lt;p>Hello GoLang: 本文&lt;br>
GoLang (var and const) 变量与常量:
&lt;a class="link" href="https://blog.yexca.net/archives/155"
>
https://blog.yexca.net/archives/155
&lt;/a>
&lt;br>
GoLang (func) 函数:
&lt;a class="link" href="https://blog.yexca.net/archives/156"
>
https://blog.yexca.net/archives/156
&lt;/a>
&lt;br>
GoLang (slice and map) 切片:
&lt;a class="link" href="https://blog.yexca.net/archives/160"
>
https://blog.yexca.net/archives/160
&lt;/a>
&lt;br>
GoLang (OOP) 面向对象:
&lt;a class="link" href="https://blog.yexca.net/archives/162"
>
https://blog.yexca.net/archives/162
&lt;/a>
&lt;br>
GoLang (reflect) 反射:
&lt;a class="link" href="https://blog.yexca.net/archives/204"
>
https://blog.yexca.net/archives/204
&lt;/a>
&lt;br>
GoLang (struct tag) 结构体标签:
&lt;a class="link" href="https://blog.yexca.net/archives/205"
>
https://blog.yexca.net/archives/205
&lt;/a>
&lt;br>
GoLang (goroutine) go 程:
&lt;a class="link" href="https://blog.yexca.net/archives/206"
>
https://blog.yexca.net/archives/206
&lt;/a>
&lt;br>
GoLang (channel) 通道:
&lt;a class="link" href="https://blog.yexca.net/archives/207"
>
https://blog.yexca.net/archives/207
&lt;/a>
&lt;/p></description></item><item><title>CentOS 7 安装 Xfce</title><link>https://blog.yexca.net/archives/153/</link><pubDate>Sat, 17 Feb 2024 22:51:34 +0800</pubDate><guid>https://blog.yexca.net/archives/153/</guid><description>&lt;p>&lt;del>这是什么时候写的文章啊（&lt;/del>&lt;/p>
&lt;h2 id="查看是否有-xfce-组">查看是否有 Xfce 组
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">yum grouplist
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>如果没有，需要安装额外包 yum 源&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">yum install epel-release -y
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="安装-x-window-system">安装 X Window system
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">yum groupinstall &lt;span class="s2">&amp;#34;X Window system&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="安装-xfce">安装 Xfce
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">yum groupinstall xfce
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="安装中文字体-楷体">安装中文字体 (楷体)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">yum install cjkuni-ukai-fonts
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="进入-xfce-桌面">进入 Xfce 桌面
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">systemctl isolate graphical.target
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="参考文章">参考文章
&lt;/h2>&lt;p>
&lt;a class="link" href="https://blog.csdn.net/qq_28641401/article/details/99428192"
target="_blank" rel="noopener"
>
CentOS 7安装Xfce桌面环境过程_qq_28641401的博客-CSDN博客
&lt;/a>
&lt;/p></description></item><item><title>微信登录后端</title><link>https://blog.yexca.net/archives/152/</link><pubDate>Sat, 10 Feb 2024 18:09:17 +0800</pubDate><guid>https://blog.yexca.net/archives/152/</guid><description>&lt;p>Happy Lunar Year!&lt;/p>
&lt;hr>
&lt;p>流程：
&lt;a class="link" href="https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html"
target="_blank" rel="noopener"
>
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html
&lt;/a>
&lt;/p>
&lt;p>前端获取授权码，向
&lt;a class="link" href="https://api.weixin.qq.com/sns/jscode2session"
target="_blank" rel="noopener"
>
https://api.weixin.qq.com/sns/jscode2session
&lt;/a>
发起请求，获取 session_key 和 openid&lt;/p>
&lt;p>微信请求接口：
&lt;a class="link" href="https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-login/code2Session.html"
target="_blank" rel="noopener"
>
https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-login/code2Session.html
&lt;/a>
&lt;/p>
&lt;h2 id="分析设计">分析设计
&lt;/h2>&lt;h3 id="接口设计">接口设计
&lt;/h3>&lt;p>请求路径：/user/user/login&lt;/p>
&lt;p>请求方式：POST&lt;/p>
&lt;p>请求参数：code String (微信用户授权码)&lt;/p></description></item><item><title>了解微信小程序</title><link>https://blog.yexca.net/archives/151/</link><pubDate>Wed, 31 Jan 2024 16:50:34 +0800</pubDate><guid>https://blog.yexca.net/archives/151/</guid><description>&lt;p>官网：
&lt;a class="link" href="https://mp.weixin.qq.com/cgi-bin/wx"
target="_blank" rel="noopener"
>
https://mp.weixin.qq.com/cgi-bin/wx
&lt;/a>
&lt;/p>
&lt;p>开发小程序之前需要先注册一个小程序，可以使用不同主体注册小程序，相应的权限也不同。例如以个人的身份注册小程序是无法获得支付权限的 (也可以使用测试号体验)&lt;/p></description></item><item><title>HTML 学习二 - 列表、表格与表单</title><link>https://blog.yexca.net/archives/150/</link><pubDate>Mon, 29 Jan 2024 13:24:25 +0800</pubDate><guid>https://blog.yexca.net/archives/150/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>HTML 学习一 - 基础:
&lt;a class="link" href="https://blog.yexca.net/archives/146"
>
https://blog.yexca.net/archives/146
&lt;/a>
&lt;br>
HTML 学习二 - 列表、表格与表单:
&lt;a class="link" href="https://blog.yexca.net/archives/150"
>
https://blog.yexca.net/archives/150
&lt;/a>
&lt;br>
HTML 学习三 - 网页布局:
&lt;a class="link" href="https://blog.yexca.net/archives/195"
>
https://blog.yexca.net/archives/195
&lt;/a>
&lt;/p>
&lt;h2 id="列表">列表
&lt;/h2>&lt;p>列表分为无序、有序列表和定义列表&lt;/p>
&lt;h3 id="无序列表">无序列表
&lt;/h3>&lt;p>unordered list -&amp;gt; list&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">ul&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">li&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>第一项&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">li&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">li&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>第二项&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">li&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">li&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>第三项&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">li&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">ul&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>效果如下&lt;/p></description></item><item><title>Fedora 开机启动运行脚本</title><link>https://blog.yexca.net/archives/149/</link><pubDate>Sun, 28 Jan 2024 14:25:58 +0800</pubDate><guid>https://blog.yexca.net/archives/149/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>千万不要把死循环放进去啊！！！使用 systemd 方式&lt;/p>
&lt;h2 id="新建脚本">新建脚本
&lt;/h2>&lt;p>在此文件中写入您的脚本&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">vi /etc/rc.d/rc.local
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>赋予执行权限&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">chmod +x /etc/rc.d/rc.local
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="编辑启动状态">编辑启动状态
&lt;/h2>&lt;p>编辑文件&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">vi /usr/lib/systemd/system/rc-local.service
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>在最后一行加入 &lt;em>[Install]&lt;/em>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># This file is part of systemd.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">#&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># systemd is free software; you can redistribute it and/or modify it&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># under the terms of the GNU Lesser General Public License as published by&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># the Free Software Foundation; either version 2.1 of the License, or&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># (at your option) any later version.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># This unit gets pulled automatically into multi-user.target by&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># systemd-rc-local-generator if /etc/rc.d/rc.local is executable.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">[&lt;/span>Unit&lt;span class="o">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">Description&lt;/span>&lt;span class="o">=&lt;/span>/etc/rc.d/rc.local Compatibility
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">ConditionFileIsExecutable&lt;/span>&lt;span class="o">=&lt;/span>/etc/rc.d/rc.local
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">After&lt;/span>&lt;span class="o">=&lt;/span>network.target
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">[&lt;/span>Service&lt;span class="o">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">Type&lt;/span>&lt;span class="o">=&lt;/span>forking
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">ExecStart&lt;/span>&lt;span class="o">=&lt;/span>/etc/rc.d/rc.local start
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">TimeoutSec&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">RemainAfterExit&lt;/span>&lt;span class="o">=&lt;/span>yes
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">SysVStartPriority&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="m">99&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">[&lt;/span>Install&lt;span class="o">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nv">WantedBy&lt;/span>&lt;span class="o">=&lt;/span>multi-user.target
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>然后使用 systemd 开机自启动&lt;/p></description></item><item><title>JavaScript 学习</title><link>https://blog.yexca.net/archives/148/</link><pubDate>Mon, 22 Jan 2024 19:51:24 +0800</pubDate><guid>https://blog.yexca.net/archives/148/</guid><description>&lt;p>JS 是一门跨平台、面向对象的脚本语言，是用来控制网页行为的，使网页可交互&lt;/p>
&lt;h2 id="js-引入方式">JS 引入方式
&lt;/h2>&lt;p>分为内部脚本和外部脚本两种&lt;/p>
&lt;h3 id="内部脚本">内部脚本
&lt;/h3>&lt;p>将 js 代码定义在 HTML 页面中&lt;/p>
&lt;ul>
&lt;li>JS 代码必须位于 &lt;code>&amp;lt;script&amp;gt;&amp;lt;/script&amp;gt;&lt;/code> 标签之间&lt;/li>
&lt;li>在 HTML 文档中，可以在任意地方，放置任意数量的 &lt;code>&amp;lt;script&amp;gt;&lt;/code>&lt;/li>
&lt;li>一般会把脚本置于 &lt;code>&amp;lt;body&amp;gt;&lt;/code> 元素的底部，可以改善显示速度&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">alert&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;Hello JavaScript&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">script&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h3 id="外部脚本">外部脚本
&lt;/h3>&lt;p>将 JS 代码定义在外部 JS 文件中，然后引入到 HTML 页面中&lt;/p></description></item><item><title>三层架构与分层解耦</title><link>https://blog.yexca.net/archives/147/</link><pubDate>Fri, 19 Jan 2024 10:37:15 +0800</pubDate><guid>https://blog.yexca.net/archives/147/</guid><description>&lt;h2 id="案例引入">案例引入
&lt;/h2>&lt;p>获取员工数据，返回统一响应结果，在页面渲染展示&lt;/p>
&lt;p>首先需要引入 dom4j 依赖，用于解析 xml 文件&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-xml" data-lang="xml">&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;groupId&amp;gt;&lt;/span>org.dom4j&lt;span class="nt">&amp;lt;/groupId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;artifactId&amp;gt;&lt;/span>dom4j&lt;span class="nt">&amp;lt;/artifactId&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;lt;version&amp;gt;&lt;/span>2.1.3&lt;span class="nt">&amp;lt;/version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nt">&amp;lt;/dependency&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>引入解析 XML 的工具类 XMLParserUtils、对应实体类 Emp、XML 文件 emp.xml&lt;/p></description></item><item><title>HTML 学习一 - 基础</title><link>https://blog.yexca.net/archives/146/</link><pubDate>Thu, 18 Jan 2024 14:43:34 +0800</pubDate><guid>https://blog.yexca.net/archives/146/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>HTML 学习一 - 基础:
&lt;a class="link" href="https://blog.yexca.net/archives/146"
>
https://blog.yexca.net/archives/146
&lt;/a>
&lt;br>
HTML 学习二 - 列表、表格与表单:
&lt;a class="link" href="https://blog.yexca.net/archives/150"
>
https://blog.yexca.net/archives/150
&lt;/a>
&lt;br>
HTML 学习三 - 网页布局:
&lt;a class="link" href="https://blog.yexca.net/archives/195"
>
https://blog.yexca.net/archives/195
&lt;/a>
&lt;/p>
&lt;h2 id="基本骨架">基本骨架
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">html&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">head&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">title&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>网页标题&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">title&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">head&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> 网页主体
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">body&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">html&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>一般有软件生成，例如在 VS Code 里可以新建 &lt;code>.html&lt;/code> 文件后输入英文 &lt;code>!&lt;/code> 按 &lt;code>TAB&lt;/code> 键自动生成&lt;/p></description></item><item><title>结构化开发</title><link>https://blog.yexca.net/archives/145/</link><pubDate>Tue, 16 Jan 2024 08:10:10 +0800</pubDate><guid>https://blog.yexca.net/archives/145/</guid><description>&lt;h2 id="系统设计的基本原理">系统设计的基本原理
&lt;/h2>&lt;p>抽象、模块化、信息隐蔽、模块独立&lt;/p>
&lt;h3 id="模块化">模块化
&lt;/h3>&lt;p>在软件的体系结构中，模块是可组合、分解和更换的单元&lt;/p>
&lt;p>模块化是指将一个待开发的软件分解成若干个小的简单部分，即模块。每个模块可独立地开发、测试，最后组装成完整的程序。这是一种复杂问题 &amp;ldquo;分而治之&amp;rdquo; 的原则。模块化的目的是使程序的结构清晰，容易阅读、理解、测试和修改&lt;/p></description></item><item><title>Spring 请求响应</title><link>https://blog.yexca.net/archives/144/</link><pubDate>Sun, 14 Jan 2024 16:47:28 +0800</pubDate><guid>https://blog.yexca.net/archives/144/</guid><description>&lt;p>浏览器发送请求会先经过 DispatcherServlet 转给各 *Controller 程序进行处理，处理完成后返回给 DispatcherServlet 处理结果，然后再返回浏览器&lt;/p>
&lt;p>DispatcherServlet 被称为核心控制器或前端控制器&lt;/p>
&lt;p>对于浏览器请求数据，会被封装到 HttpServletRequest 对象，响应数据被封装到 HttpServletResponse&lt;/p></description></item><item><title>Maven 学习</title><link>https://blog.yexca.net/archives/143/</link><pubDate>Sat, 13 Jan 2024 23:58:42 +0800</pubDate><guid>https://blog.yexca.net/archives/143/</guid><description>&lt;p>Maven 是一款用于管理和构建 java 项目的工具&lt;/p>
&lt;p>Maven 可以方便快捷的管理项目依赖的资源 (jar 包)，避免版本冲突问题；提供标准、统一的项目结构；标准跨平台的自动化项目构建方式&lt;/p></description></item><item><title>JavaWeb 入门</title><link>https://blog.yexca.net/archives/142/</link><pubDate>Wed, 10 Jan 2024 17:53:18 +0800</pubDate><guid>https://blog.yexca.net/archives/142/</guid><description>&lt;h2 id="springboot-入门例子">SpringBoot 入门例子
&lt;/h2>&lt;p>需求：使用 SpringBoot 开发一个 web 应用，浏览器发起 /hello 后，返回字符串 “Hello Spring”&lt;/p>
&lt;p>首先需要创建 SpringBoot 工程，并勾选 web 开发相关依赖&lt;/p>
&lt;p>然后创建控制类，路径在 &lt;code>*Application.java&lt;/code> 同级创建文件 &lt;code>Controller/HelloController.java&lt;/code>&lt;/p></description></item><item><title>Docker 创建与推送 H5 镜像</title><link>https://blog.yexca.net/archives/141/</link><pubDate>Tue, 09 Jan 2024 21:50:25 +0800</pubDate><guid>https://blog.yexca.net/archives/141/</guid><description>&lt;p>新建目录，将网页文件放入 &lt;code>./dict&lt;/code>&lt;/p>
&lt;p>根目录装进文件 &lt;code>dockerfile&lt;/code> 内容如下：&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-dockerfile" data-lang="dockerfile">&lt;span class="line">&lt;span class="cl">&lt;span class="c"># 基于nginx:1.20镜像&lt;/span>&lt;span class="err">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">&lt;/span>&lt;span class="k">FROM&lt;/span>&lt;span class="s"> nginx:1.20&lt;/span>&lt;span class="err">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">&lt;/span>&lt;span class="c"># 将dist文件中的内容复制到 /usr/share/nginx/html/ 这个目录下面&lt;/span>&lt;span class="err">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">&lt;/span>&lt;span class="k">COPY&lt;/span> dist/ /usr/share/nginx/html/dist/&lt;span class="err">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">&lt;/span>&lt;span class="c"># 用本地的 nginx.conf 配置来替换nginx镜像里的默认配置&lt;/span>&lt;span class="err">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">&lt;/span>&lt;span class="k">COPY&lt;/span> nginx.conf /etc/nginx/nginx.conf&lt;span class="err">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>新建文件 &lt;code>nginx.conf&lt;/code> 内容如下：&lt;/p></description></item><item><title>设计模式 Index</title><link>https://blog.yexca.net/archives/140/</link><pubDate>Wed, 27 Dec 2023 16:14:15 +0800</pubDate><guid>https://blog.yexca.net/archives/140/</guid><description>&lt;p>简单介绍设计模式&lt;/p>
&lt;ul>
&lt;li>
&lt;a class="link" href="https://blog.yexca.net/archives/108"
>
设计模式 引
&lt;/a>
&lt;/li>
&lt;/ul>
&lt;p>具体的设计模式&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th style="text-align: center">&lt;/th>
&lt;th style="text-align: center">创建型&lt;/th>
&lt;th style="text-align: center">结构型&lt;/th>
&lt;th style="text-align: center">行为型&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td style="text-align: center">类&lt;/td>
&lt;td style="text-align: center">工厂方法模式&lt;/td>
&lt;td style="text-align: center">适配器模式 (类)&lt;/td>
&lt;td style="text-align: center">
&lt;a class="link" href="https://blog.yexca.net/archives/126"
>
解释器模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/138"
>
模板方法模式
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td style="text-align: center">对象&lt;/td>
&lt;td style="text-align: center">抽象工厂模式&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/112"
>
生成器模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/113"
>
原型模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/115"
>
单例模式
&lt;/a>
&lt;/td>
&lt;td style="text-align: center">适配器模式 (对象)&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/118"
>
桥接模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/119"
>
组合模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/120"
>
装饰器模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/121"
>
外观模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/122"
>
享元模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/123"
>
代理模式
&lt;/a>
&lt;/td>
&lt;td style="text-align: center">
&lt;a class="link" href="https://blog.yexca.net/archives/124"
>
责任链模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/125"
>
命令模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/127"
>
迭代器模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/128"
>
中介者模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/132"
>
备忘录模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/134"
>
观察者模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/136"
>
状态模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/137"
>
策略模式
&lt;/a>
&lt;br />
&lt;a class="link" href="https://blog.yexca.net/archives/139"
>
访问者模式
&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>其中&lt;/p></description></item><item><title>访问者模式</title><link>https://blog.yexca.net/archives/139/</link><pubDate>Tue, 26 Dec 2023 16:09:09 +0800</pubDate><guid>https://blog.yexca.net/archives/139/</guid><description>&lt;p>Visitor Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>表示一个作用于某对象结构中的各元素的操作。它不允许在不改变各元素的类的前提下定义作用于这些元素的新操作&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.jsdelivr.net/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e8%ae%bf%e9%97%ae%e8%80%85%e6%a8%a1%e5%bc%8f.5psqrqdq7gs0.webp"
loading="lazy"
alt="访问者模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Visitor (访问者) 为该对象结构中 ConcreteElement 的每一个类声明一个 Visit 操作。该操作的名字和特殊标识了发送 Visit 请求给该访问者的那个类，这使得访问者可以确定正被访问元素的具体的类。这样访问者就可以通过该元素的特定接口直接访问它&lt;/li>
&lt;li>ConcreteVisitor (具体访问者) 实现每个有 Visitor 声明的操作，每个操作实现本算法的一部分，而该算法片段乃是对应于结构中对象的类。ConcreteVisitor 为该算法提供了上下文并存储它的局部状态。这一状态常常在遍历该结构的过程中累积结构&lt;/li>
&lt;li>Element (元素) 定义以一个访问者为参数的 Accept 操作&lt;/li>
&lt;li>ConcreteElement (具体元素) 实现以一个访问者为参数的 Accept 操作&lt;/li>
&lt;li>ObjectStructure (对象结构) 能枚举它的元素；可以提供一个高层的接口以允许该访问者访问它的元素；可以是一个组合或者一个集合，如一个列表或一个无序集合&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Visitor 模式适用于：&lt;/p></description></item><item><title>模板方法模式</title><link>https://blog.yexca.net/archives/138/</link><pubDate>Mon, 25 Dec 2023 21:06:06 +0800</pubDate><guid>https://blog.yexca.net/archives/138/</guid><description>&lt;p>Template Method Pattern 类行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>定义一个操作中的算法骨架，而将一些步骤延迟到子类中。Template Method 使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤&lt;/p></description></item><item><title>策略模式</title><link>https://blog.yexca.net/archives/137/</link><pubDate>Sun, 24 Dec 2023 18:30:30 +0800</pubDate><guid>https://blog.yexca.net/archives/137/</guid><description>&lt;p>Strategy Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>定义一系列的算法，把它们一个个封装起来，并且使它们可以相互替换。此模式使得算法可以独立于使用它们的客户而变化&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.jsdelivr.net/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e7%ad%96%e7%95%a5%e6%a8%a1%e5%bc%8f.71vxrbauk9s0.webp"
loading="lazy"
alt="策略模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>
&lt;p>Strategy (策略) 定义所有支持的算法的公共接口。Context 使用这个接口来调用某 ConcreteStrategy 定义的算法&lt;/p></description></item><item><title>状态模式</title><link>https://blog.yexca.net/archives/136/</link><pubDate>Fri, 22 Dec 2023 15:11:16 +0800</pubDate><guid>https://blog.yexca.net/archives/136/</guid><description>&lt;p>State Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.jsdelivr.net/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e7%8a%b6%e6%80%81%e6%a8%a1%e5%bc%8f.775ry4zlh4g0.webp"
loading="lazy"
alt="状态模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>
&lt;p>Context (上下文) 定义客户感兴趣的接口：维护一个 ConcerteState 子类的实例，这个实例定义当前状态&lt;/p></description></item><item><title>Ajax 与 Axios</title><link>https://blog.yexca.net/archives/135/</link><pubDate>Thu, 21 Dec 2023 13:32:15 +0800</pubDate><guid>https://blog.yexca.net/archives/135/</guid><description>&lt;p>Asynchronous JavaScript And XML，异步的 JS 和 XML。作用：&lt;/p>
&lt;ul>
&lt;li>数据交换：通过 Ajax 可以给服务器发送请求，并获取服务器响应的数据&lt;/li>
&lt;li>异步交互：可以在不重新加载整个页面的情况下，与服务器交换数据并更新部分网页的技术&lt;/li>
&lt;/ul>
&lt;p>使用场景：搜索联想、用户名是否可用等&lt;/p></description></item><item><title>观察者模式</title><link>https://blog.yexca.net/archives/134/</link><pubDate>Thu, 21 Dec 2023 01:18:25 +0800</pubDate><guid>https://blog.yexca.net/archives/134/</guid><description>&lt;p>Observer Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>定义对象间的一种一对多的依赖关系，当一个对象的状态发生改变吋，所有依赖于它的对象都得到通知并被自动更新&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.jsdelivr.net/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e8%a7%82%e5%af%9f%e8%80%85%e6%a8%a1%e5%bc%8f.5x607bf0xvw0.webp"
loading="lazy"
alt="观察者模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Subject (目标) 知道它的观察者，可以有任意多个观察者观察同一个目标；提供注册和删除观察者对象的接口&lt;/li>
&lt;li>Observer (观察者) 为那些在&amp;quot;目标发生改变时需获得通知的对象定义一个更新接口&lt;/li>
&lt;li>ConcreteSubject (具体目标) 将有关状态存入各 ConcreteObserver 对象：当它的状态发生改变时，向它的各个观察者发出通知&lt;/li>
&lt;li>ConcreteObserver (具体观察者) 维护一个指向 ConcreteSubject 对象的引用：存储有关状态，这些状态应与目标的状态保持一致：实现 Observer 的更新接口，以使自身状态与目标的状态保持一致&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Observer 模式适用于：&lt;/p></description></item><item><title>hvdb 注册检测</title><link>https://blog.yexca.net/archives/133/</link><pubDate>Sat, 02 Dec 2023 21:23:01 +0800</pubDate><guid>https://blog.yexca.net/archives/133/</guid><description>&lt;div class="notice warn">&lt;strong>⚠️&lt;/strong>
本人也没有账号，因此没有任何邀请码。 即使来信咨询，我也无法提供任何帮助，请勿发送邮件询问邀请码相关事宜，谢谢理解
&lt;/div>
&lt;style lang="scss">
.notice {
padding: 0.75em 1em;
margin: 1em 0;
border-left: 4px solid;
border-radius: 4px;
&amp;.default {
border-color: #ccc;
background-color: #f9f9f9;
color: #333;
}
&amp;.info {
border-color: #2196f3;
background-color: #e3f2fd;
color: #1a237e;
}
&amp;.warn {
border-color: #ff9800;
background-color: #fff3e0;
color: #e65100;
}
&amp;.danger {
border-color: #f44336;
background-color: #ffebee;
color: #b71c1c;
}
}
[data-scheme="dark"] {
.notice {
&amp;.default {
border-color: #666;
background-color: #2a2a2a;
color: #eee;
}
&amp;.info {
border-color: #90caf9;
background-color: #1e3a5f;
color: #e3f2fd;
}
&amp;.warn {
border-color: #ffb74d;
background-color: #4e342e;
color: #fff3e0;
}
&amp;.danger {
border-color: #ef5350;
background-color: #3e2723;
color: #ffebee;
}
}
}
[data-scheme="sepia"] {
.notice {
&amp;.info {
border-color: #6a5acd;
background-color: #fdf6e3;
color: #3c2f2f;
}
&amp;.warn {
border-color: #e9967a;
background-color: #faf0e6;
color: #5c4033;
}
&amp;.danger {
border-color: #cd5c5c;
background-color: #f5e0dc;
color: #7b3f3f;
}
}
}
&lt;/style>
&lt;p>从 ???? &lt;del>我记不清了&lt;/del> 开始喜欢上 ASMR 后就接触到了音声，不过高昂的价格显然会驱使我去广袤的互联网上搜索，于是便知道了这个网站，可此网站只有登录后才可以看到更多内容，而每年也几乎是不定时开放注册，这使我很好奇这个网站&lt;/p></description></item><item><title>备忘录模式</title><link>https://blog.yexca.net/archives/132/</link><pubDate>Mon, 27 Nov 2023 14:08:05 +0800</pubDate><guid>https://blog.yexca.net/archives/132/</guid><description>&lt;p>Memento Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>在不破坏封装性的前提下捕获一个对象的内部状态，并在对象之外保存这个状态。这样以后就可以将对象恢复到原先保存的状态&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.jsdelivr.net/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e5%a4%87%e5%bf%98%e5%bd%95%e6%a8%a1%e5%bc%8f.5pa8d63vllc0.webp"
loading="lazy"
alt="备忘录模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Memento (备忘录) 存储原发器对象的内部状态，原发器根据需要决定备忘录存储原发器的哪些内部状态；防止原发器以外的其他对象访问备忘录&lt;/li>
&lt;li>Originator (原发器) 创建一个备忘录，用于记录当前时刻它的内部状态；使用备忘录恢复内部状态&lt;/li>
&lt;li>Caretaker (管理者) 负责保存好备忘录；不能对备忘录的内容进行操作或检查&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Memento 模式适用于：&lt;/p></description></item><item><title>2023 新服务器部署记录</title><link>https://blog.yexca.net/archives/131/</link><pubDate>Fri, 03 Nov 2023 15:34:01 +0800</pubDate><guid>https://blog.yexca.net/archives/131/</guid><description>&lt;p>自从博客转移到 Github 上后本打算就这样不再购买新服务器的，不过可能是这几个月很平静使得我迫切想折腾一阵，也可能是 &lt;em>我可以不用，但不能没有&lt;/em> 的心理使我冲动消费了一次&lt;/p></description></item><item><title>网易云音乐 2020-2022 年度报告</title><link>https://blog.yexca.net/archives/130/</link><pubDate>Sun, 29 Oct 2023 23:45:01 +0800</pubDate><guid>https://blog.yexca.net/archives/130/</guid><description>&lt;h2 id="网站">网站
&lt;/h2>&lt;p>手机访问即可查看 (只试过 IOS)&lt;/p>
&lt;p>2020:
&lt;a class="link" href="https://st.music.163.com/c/year2020"
target="_blank" rel="noopener"
>
https://st.music.163.com/c/year2020
&lt;/a>
&lt;/p>
&lt;p>2021:
&lt;a class="link" href="https://st.music.163.com/c/year2021"
target="_blank" rel="noopener"
>
https://st.music.163.com/c/year2021
&lt;/a>
&lt;/p>
&lt;p>2022:
&lt;a class="link" href="https://st.music.163.com/c/year2022"
target="_blank" rel="noopener"
>
https://st.music.163.com/c/year2022
&lt;/a>
&lt;/p>
&lt;h2 id="过程">过程
&lt;/h2>&lt;p>Google 搜索 &lt;em>网易云年度报告&lt;/em>，发现
&lt;a class="link" href="https://st.music.163.com/c/reportreview2020"
target="_blank" rel="noopener"
>
https://st.music.163.com/c/reportreview2020
&lt;/a>
(手机访问情况下会出现 2020 年度报告入口)，顺着网站试着修改年份，发现 2020-2022 可以查看&lt;/p></description></item><item><title>Linux 学习 Index</title><link>https://blog.yexca.net/archives/129/</link><pubDate>Sat, 21 Oct 2023 14:18:15 +0800</pubDate><guid>https://blog.yexca.net/archives/129/</guid><description>&lt;p>此文章写于 2022.12，由于多种原因未发布&lt;/p>
&lt;p>该系列文章为我阅读《Linux 系统管理、服务器设置、安全、云数据中心》所书写相关笔记&lt;/p>
&lt;h2 id="第一部分入门">第一部分：入门
&lt;/h2>&lt;p>这部分没有记录文章&lt;/p></description></item><item><title>中介者模式</title><link>https://blog.yexca.net/archives/128/</link><pubDate>Sun, 15 Oct 2023 17:14:26 +0800</pubDate><guid>https://blog.yexca.net/archives/128/</guid><description>&lt;p>Mediator Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用，从而使其耦合松散，而且可以独立地改变它们之间地交互&lt;/p></description></item><item><title>迭代器模式</title><link>https://blog.yexca.net/archives/127/</link><pubDate>Thu, 12 Oct 2023 09:09:24 +0800</pubDate><guid>https://blog.yexca.net/archives/127/</guid><description>&lt;p>Iterator Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>提供一种方法顺序访问一个聚合对象中的各个元素，且不需要暴露该对象的内部表示&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e8%bf%ad%e4%bb%a3%e5%99%a8%e6%a8%a1%e5%bc%8f.3qxn134hel60.webp"
loading="lazy"
alt="迭代器模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Iterator (迭代器) 定义访问和遍历元素的接口&lt;/li>
&lt;li>ConcreteIterator (具体迭代器) 实现迭代器接口；对该聚合遍历时跟踪当前位置&lt;/li>
&lt;li>Aggregate (聚合) 定义创建相应迭代器对象的接口&lt;/li>
&lt;li>ConcreteAggregate (具体聚合) 实现创建相应迭代器的接口，该操作返回 ConcreteIterator 的一个适当的实例&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Iterator 模式适用于：&lt;/p></description></item><item><title>解释器模式</title><link>https://blog.yexca.net/archives/126/</link><pubDate>Mon, 09 Oct 2023 17:31:58 +0800</pubDate><guid>https://blog.yexca.net/archives/126/</guid><description>&lt;p>Interpreter Pattern 类行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>给定一个语言，定义它的文法的一种表示，并定义一个解释器，这个解释器使用该表示来解释语言中的句子&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2021/%e8%a7%a3%e9%87%8a%e5%99%a8%e6%a8%a1%e5%bc%8f.67y5fd2xby40.webp"
loading="lazy"
alt="解释器模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>AbstractExpression 声明一个程序的解释操作，这个接口为抽象语法树中所有的结点所共享&lt;/li>
&lt;li>TerminalExpression 实现与文法中的终结符相关联的解释操作；一个句子中的每个终结符需要该类的一个实例&lt;/li>
&lt;li>NonterminalExpression 对文法中的每一条规则都需要一个 NonterminalExpression 类；为每个符号都维护一个 AbstractExpression 类型的实例变量；为文法中的非终结符实现解释 (Interpret) 操作&lt;/li>
&lt;li>Context 包含解释器之外的一些全局信息&lt;/li>
&lt;li>Client 构建 (或被给定) 表示该文法定义的语言中一个特定的句子的抽象语法树，该抽象语法树由 NonterminalExpression 和 TerminalExpression 的实例装配而成；调用解释操作&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Interpreter 模式适用于当有一个语言需要解释执行，并且可将该语言中的句子表示为一个抽象语法树时，以下情况效果最好：&lt;/p></description></item><item><title>命令模式</title><link>https://blog.yexca.net/archives/125/</link><pubDate>Sun, 10 Sep 2023 15:26:55 +0800</pubDate><guid>https://blog.yexca.net/archives/125/</guid><description>&lt;p>Command Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>将一个请求封装为一个对象，从而使得可以用不同的请求对客户进行参数化；对请求排队或记录请求日志，以及支持可撤销的操作&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e5%91%bd%e4%bb%a4%e6%a8%a1%e5%bc%8f.5urjyaqm2mo0.webp"
loading="lazy"
alt="命令模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Command 声明执行操作的接口&lt;/li>
&lt;li>ConcreteCommand 将一个接收者对象绑定于一个动作；调用接收者相应的操作，以实现 Execute&lt;/li>
&lt;li>Client 创建一个具体命令对象并设定它的接收者&lt;/li>
&lt;li>Invoker 要求该命令执行这个请求&lt;/li>
&lt;li>Receiver 知道如何实施与执行一个请求相关的操作。任何类都可能作为一个接收者&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Command 模式适用于：&lt;/p></description></item><item><title>责任链模式</title><link>https://blog.yexca.net/archives/124/</link><pubDate>Sat, 09 Sep 2023 07:02:55 +0800</pubDate><guid>https://blog.yexca.net/archives/124/</guid><description>&lt;p>Chain of Responsibility Pattern 对象行为型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>使多个对象都有机会处理请求，从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链，并沿着这条链传递该请求，直到有一个对象处理它为止&lt;/p></description></item><item><title>代理模式</title><link>https://blog.yexca.net/archives/123/</link><pubDate>Fri, 08 Sep 2023 12:15:26 +0800</pubDate><guid>https://blog.yexca.net/archives/123/</guid><description>&lt;p>Proxy Pattern 对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>为其他对象提供一种代理以控制对这个对象的访问&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e4%bb%a3%e7%90%86%e6%a8%a1%e5%bc%8f.1lw7cilzkxds.webp"
loading="lazy"
alt="代理模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Proxy 保存一个引用使得代理可以访问实体；提供一个与 Subject 的接口相同的接口，使代理可以用来代替实体；控制对实体的存取，并可能负责创建和删除它&lt;/li>
&lt;li>Subject 定义 RealSubject 和 Proxy 的共用接口，这样就在任何使用 RealSubject 的地方都可以使用 Proxy&lt;/li>
&lt;li>RealSubject 定义 Proxy 所代表的实体&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Proxy 模式适用于在需要比较通用和复杂的对象指针代替简单的指针的时候，常见的情况有：&lt;/p></description></item><item><title>享元模式</title><link>https://blog.yexca.net/archives/122/</link><pubDate>Thu, 07 Sep 2023 13:54:55 +0800</pubDate><guid>https://blog.yexca.net/archives/122/</guid><description>&lt;p>Flyweight Pattern 对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>运用共享技术有效地支持大量细粒度的对象&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e4%ba%ab%e5%85%83%e6%a8%a1%e5%bc%8f.7jg2ravau7o0.webp"
loading="lazy"
alt="享元模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>
&lt;p>Flyweight 描述一个接口，通过这个接口 Flyweight 可以接受并作用于外部状态&lt;/p>
&lt;/li>
&lt;li>
&lt;p>ConcreteFlyweight 实现 Flyweight 接口，并为内部状态 (如果有) 增加存储空间。ConcreteFlyweight 对象必项是可共享的。它所存储的状态必须是内部的，即它必须独立于 ConcreteFlyweight 对象的场景&lt;/p></description></item><item><title>外观模式</title><link>https://blog.yexca.net/archives/121/</link><pubDate>Wed, 06 Sep 2023 03:02:02 +0800</pubDate><guid>https://blog.yexca.net/archives/121/</guid><description>&lt;p>Facade Pattern 对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>为子系统中的一组接口提供一个一致的界面，Facade 模式定义了一个高层接口，这个接口使得这一子系统更加容易使用&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e5%a4%96%e8%a7%82%e6%a8%a1%e5%bc%8f.6awzfhe505c0.webp"
loading="lazy"
alt="外观模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Facade 知道哪些子系统类负责处理请求；将客户的请求代理给适当的子系统对象&lt;/li>
&lt;li>Subsystem classes 实现子系统的功能；处理有 Facade 对象指派的任务；没有 Facade 的任何相关信息，即没有指向 Facade 的指针&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Facade 模式适用于：&lt;/p></description></item><item><title>装饰器模式</title><link>https://blog.yexca.net/archives/120/</link><pubDate>Tue, 05 Sep 2023 21:45:45 +0800</pubDate><guid>https://blog.yexca.net/archives/120/</guid><description>&lt;p>Decorator Pattern 对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>动态地给一个对象添加一些额外的职责。就增加功能而言，Decorator 模式比生成子类更加灵活&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e8%a3%85%e9%a5%b0%e5%99%a8.2xwcg7gcu640.webp"
loading="lazy"
alt="装饰器"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Component 定义一个对象接口，可以给这些对象动态地添加职责&lt;/li>
&lt;li>ConcreteComponent 定义一个对象，可以给这个对象添加一些职责&lt;/li>
&lt;li>Decorator 维持一个指向 Component 对象的指针，并定义一个与 Component 接口一致的接口&lt;/li>
&lt;li>ConcreteDecorator 向组件添加职责&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Decorator 模式适用于：&lt;/p></description></item><item><title>组合模式</title><link>https://blog.yexca.net/archives/119/</link><pubDate>Sun, 03 Sep 2023 15:44:45 +0800</pubDate><guid>https://blog.yexca.net/archives/119/</guid><description>&lt;p>Composite Pattern 对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>将对象组合成树型结构以表示 &amp;ldquo;部分 - 整体&amp;rdquo; 的层次结构。Composite 使得用户对单个对象和组合对象的使用具有一致性&lt;/p></description></item><item><title>桥接模式</title><link>https://blog.yexca.net/archives/118/</link><pubDate>Sat, 02 Sep 2023 17:34:34 +0800</pubDate><guid>https://blog.yexca.net/archives/118/</guid><description>&lt;p>Bridge Pattern 对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>将抽象部分与其实现部分分离，使它们都可以独立地变化&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e6%a1%a5%e6%8e%a5%e6%a8%a1%e5%bc%8f.63qf1btnav80.webp"
loading="lazy"
alt="桥接模式"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Abstraction 定义抽象类的接口，维护一个指向 Implementor 类型对象的指针&lt;/li>
&lt;li>RefinedAbstraction 扩充由 Abstraction 定义的接口&lt;/li>
&lt;li>Implementor 定义实现类的接口，该接口不一定要与 Abstraction 的接口完全一致；事实上这两个接口可以完全不同
一般来说，Implementor 接口仅提供基本操作，而 Abstraction 定义了基于这些基本操作的较高层次的操作&lt;/li>
&lt;li>ConcreteImplementor 实现 Implementor 接口并定义它的具体实现&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Bridge 模式适用于：&lt;/p></description></item><item><title>适配器模式</title><link>https://blog.yexca.net/archives/117/</link><pubDate>Fri, 01 Sep 2023 15:03:03 +0800</pubDate><guid>https://blog.yexca.net/archives/117/</guid><description>&lt;p>Adapter Pattern 类结构型模式/对象结构型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作&lt;/p></description></item><item><title>使用 CNAME 将域名重定向到带路径的 URL</title><link>https://blog.yexca.net/archives/116/</link><pubDate>Mon, 28 Aug 2023 15:31:01 +0800</pubDate><guid>https://blog.yexca.net/archives/116/</guid><description>&lt;p>之前拥有服务器的时候虽然有过此想法，但毕竟只要服务器再开个站点就解决了并没有深入研究，如今服务器到期将 Blog 搬到 Github 上想要继续这样无疑是不可能的，于是便寻求解决方法&lt;/p></description></item><item><title>单例模式</title><link>https://blog.yexca.net/archives/115/</link><pubDate>Wed, 05 Jul 2023 13:58:25 +0800</pubDate><guid>https://blog.yexca.net/archives/115/</guid><description>&lt;p>Singleton Pattern 对象创建型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>保证一个类仅有一个实例，并提供一个访问它的全局访问点&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f.47bqfvzklxk0.webp"
loading="lazy"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Singleton 指定一个 Instance 操作，允许客户访问它的唯一实例&lt;/li>
&lt;li>Instance 是一个类操作；可能负责创建它自己的唯一实例&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Singleton 模式适用于：&lt;/p></description></item><item><title>アイドルマスター ミリオンライブ！的 IP 规则</title><link>https://blog.yexca.net/archives/114/</link><pubDate>Fri, 09 Jun 2023 23:32:09 +0800</pubDate><guid>https://blog.yexca.net/archives/114/</guid><description>&lt;p>最近游玩 ミリシタ 时连接不上，遂寻找解决方法 &lt;del>(顺便试试 Spotify 的嵌入效果，这个主题不支持直接解析 H5，懒得改了)&lt;/del>&lt;/p>
&lt;h2 id="域名">域名
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">theaterdays.appspot.com
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;p>&lt;del>这里原先嵌入了 雨宿り 的 Spotify 的歌&lt;/del>&lt;/p></description></item><item><title>原型模式</title><link>https://blog.yexca.net/archives/113/</link><pubDate>Fri, 02 Jun 2023 19:31:44 +0800</pubDate><guid>https://blog.yexca.net/archives/113/</guid><description>&lt;p>Prototype Pattern 对象创建型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>用原型实例指定创建对象的种类，并且通过复制这些原型创建新的对象&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/image_hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e5%8e%9f%e5%9e%8b%e6%a8%a1%e5%bc%8f.550t72mfloo0.webp"
loading="lazy"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Prototype 声明一个复制自身的接口&lt;/li>
&lt;li>ConcretePrototype 实现一个复制自身的操作&lt;/li>
&lt;li>Client 让一个原型复制自身从而创建一个新的对象&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Prototype 模式适用于：&lt;/p></description></item><item><title>生成器模式</title><link>https://blog.yexca.net/archives/112/</link><pubDate>Thu, 01 Jun 2023 23:33:17 +0800</pubDate><guid>https://blog.yexca.net/archives/112/</guid><description>&lt;p>Builder Pattern 对象创建型模式&lt;/p>
&lt;h2 id="意图">意图
&lt;/h2>&lt;p>将一个复杂对象的构建与它的表示分离，使得同样的构建过程可以创建不同的表示&lt;/p>
&lt;h2 id="结构">结构
&lt;/h2>&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2023/03-%e8%ae%be%e8%ae%a1%e6%a8%a1%e5%bc%8f/%e7%94%9f%e6%88%90%e5%99%a8%e6%a8%a1%e5%bc%8f.52btnuzz5780.webp"
loading="lazy"
alt="img"
>&lt;/p>
&lt;p>其中：&lt;/p>
&lt;ul>
&lt;li>Builder 为创建一个 Product 对象的各个部件指定抽象接口&lt;/li>
&lt;li>ConcreteBuilder 实现 Builder 的接口以构造和装配该产品的各个部件，定义并明确它所创建的表示，提供一个检索产品的接口&lt;/li>
&lt;li>Director 构造一个使用 Builder 接口的对象&lt;/li>
&lt;li>Product 表示被构建的复杂对象。ConcreteBuilder 创建该产品的内部表示并定义它的装配过程。包含定义组成组件的类，包括将这些组件装配成最终产品的接口&lt;/li>
&lt;/ul>
&lt;h2 id="适用性">适用性
&lt;/h2>&lt;p>Builder 模式适用于：&lt;/p></description></item><item><title>工厂模式</title><link>https://blog.yexca.net/archives/111/</link><pubDate>Sun, 28 May 2023 10:23:46 +0800</pubDate><guid>https://blog.yexca.net/archives/111/</guid><description>&lt;h2 id="简单工厂模式">简单工厂模式
&lt;/h2>&lt;p>简单工厂模式属于创建型模式，但&lt;strong>不属于&lt;/strong> 23 种设计模式之一&lt;/p>
&lt;p>定义：定义一个工厂类，它可以根据参数的不同返回不同类的实例，被创建的实例通常都具有共同的父类&lt;/p></description></item><item><title>算法 钢条切割问题 (动态规划 分治)</title><link>https://blog.yexca.net/archives/110/</link><pubDate>Sat, 27 May 2023 19:37:08 +0800</pubDate><guid>https://blog.yexca.net/archives/110/</guid><description>&lt;h2 id="问题描述">问题描述
&lt;/h2>&lt;p>某公司购买长钢条，将其切割后进行出售。切割钢条的成本可以忽略不计，钢条的长度为英寸。已知价格表 $p$ ，其中 $p_{i}(i=1,2,\cdots,m)$ 表示长度为 $i$ 英寸的钢条的价格。现要求解使销售收益最大的切割方案&lt;/p></description></item><item><title>算法 假币问题 (分治)</title><link>https://blog.yexca.net/archives/109/</link><pubDate>Thu, 18 May 2023 20:17:35 +0800</pubDate><guid>https://blog.yexca.net/archives/109/</guid><description>&lt;h2 id="问题描述">问题描述
&lt;/h2>&lt;p>有 $n$ 枚硬币，其中有一枚是假币，已知假币的重量较轻。现只有一个天平，要求用尽量少的比较次数找出这枚假币&lt;/p>
&lt;h2 id="问题分析">问题分析
&lt;/h2>&lt;p>将 $n$ 枚硬币分成相等的两部分：&lt;/p>
&lt;ol>
&lt;li>当 $n$ 为偶数时，将前后两部分，即 $1\cdots\frac{n}{2}$ 和 $\frac{n}{2}+1\cdots n$ 放在天平的两端，较轻的一端里有假币，继续在较轻的这部分硬币中用同样的方法找出假币&lt;/li>
&lt;li>当 $n$ 为奇数时，将前后两部分，即 $1\cdots\frac{n-1}{2}$ 和 $\frac{n+1}{2}+1\cdots n$ 放在天平的两端，较轻的一端里有假币，继续在较轻的这部分硬币中用同样的方法找出假币；若两端重量相等，则中间的硬币，即第 $\frac{n+1}{2}$ 枚硬币是假币&lt;/li>
&lt;/ol>
&lt;h2 id="c-代码">C 代码
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;span class="lnt">39
&lt;/span>&lt;span class="lnt">40
&lt;/span>&lt;span class="lnt">41
&lt;/span>&lt;span class="lnt">42
&lt;/span>&lt;span class="lnt">43
&lt;/span>&lt;span class="lnt">44
&lt;/span>&lt;span class="lnt">45
&lt;/span>&lt;span class="lnt">46
&lt;/span>&lt;span class="lnt">47
&lt;/span>&lt;span class="lnt">48
&lt;/span>&lt;span class="lnt">49
&lt;/span>&lt;span class="lnt">50
&lt;/span>&lt;span class="lnt">51
&lt;/span>&lt;span class="lnt">52
&lt;/span>&lt;span class="lnt">53
&lt;/span>&lt;span class="lnt">54
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c" data-lang="c">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;stdio.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// coins:重量数组 first,last:数组第一个与最后一个下标
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">last&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">void&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">10&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">tmp&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">9&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;第 %d 个是假币&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="n">tmp&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">last&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">firstSum&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">lastSum&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 只剩两枚硬币
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">first&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="n">last&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="p">])&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">last&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 偶数枚硬币
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="p">((&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">%&lt;/span>&lt;span class="mi">2&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">firstSum&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">lastSum&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">firstSum&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">lastSum&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>&lt;span class="k">else&lt;/span>&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">last&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>&lt;span class="k">else&lt;/span>&lt;span class="p">{&lt;/span> &lt;span class="c1">// 奇数枚硬币
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">for&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">firstSum&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">lastSum&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="n">coins&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">firstSum&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">lastSum&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>&lt;span class="k">else&lt;/span> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">firstSum&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">lastSum&lt;/span>&lt;span class="p">){&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="nf">getCounterfeitCoin&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">coins&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">last&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>&lt;span class="k">else&lt;/span>&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">first&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">last&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">first&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div></description></item><item><title>设计模式 引</title><link>https://blog.yexca.net/archives/108/</link><pubDate>Wed, 17 May 2023 22:50:20 +0800</pubDate><guid>https://blog.yexca.net/archives/108/</guid><description>&lt;p>&amp;ldquo;每一个设计模式描述了一个在我们周围不断重复发生的问题，以及该问题的解决方案的核心。这样，你就能一次又一次地使用该方案而不必做重复劳动&amp;rdquo;。设计模式的核心在于提供了相关问题的解决方案，使得人们可以简单方便地复用成功的设计和体系结构&lt;/p></description></item><item><title>Honkai: Star Rail 国际服分流规则</title><link>https://blog.yexca.net/archives/107/</link><pubDate>Tue, 16 May 2023 23:13:21 +0800</pubDate><guid>https://blog.yexca.net/archives/107/</guid><description>&lt;p>针对中国大陆无法进入游戏分流规则&lt;/p>
&lt;h2 id="key">Key
&lt;/h2>&lt;p>在进入游戏时需要 udp 连接，而多数协议不支持 udp，即遇到 udp 会自动拒绝，所以将 udp 连接的 IP 设置为直连即可，下面是我抓取到的两个 IP&lt;/p></description></item><item><title>算法 电路布线问题 (动态规划)</title><link>https://blog.yexca.net/archives/106/</link><pubDate>Tue, 16 May 2023 17:53:31 +0800</pubDate><guid>https://blog.yexca.net/archives/106/</guid><description>&lt;h2 id="问题描述">问题描述
&lt;/h2>&lt;p>在一块电路板的上下两端分别有 n 个接线柱。根据电路设计，用 $(i, \pi(i))$ 表示将上端接线柱 i 与下端接线柱 $\pi(i)$ 相连，称其为该电路板上的第 i 条连线&lt;/p>
&lt;p>下图所示的 $\pi(i)$ 排列为 $\{8, 7, 4, 2, 5, 1, 9, 3, 10, 6\}$ 对于任何 $1 \le i &lt; j \le n $ ，第 i 条连线和第 j 条连线相交的充要条件是 $\pi(i)>\pi(j)$&lt;/p></description></item><item><title>搭建个人音乐网站</title><link>https://blog.yexca.net/archives/105/</link><pubDate>Tue, 02 May 2023 02:27:39 +0800</pubDate><guid>https://blog.yexca.net/archives/105/</guid><description>&lt;p>使用 Rclone 挂载 Onedrive 歌曲文件，Navidrome 搭建网站，采用 docker 部署&lt;/p>
&lt;h2 id="rclone">Rclone
&lt;/h2>&lt;p>首先需要在 Windows 系统上运行获取配置，然后再在服务器上安装并挂载文件&lt;/p>
&lt;h3 id="获取-token">获取 Token
&lt;/h3>&lt;p>在 Windows 电脑上下载 Rclone，下载地址：
&lt;a class="link" href="https://rclone.org/downloads/"
target="_blank" rel="noopener"
>
https://rclone.org/downloads/
&lt;/a>
&lt;/p></description></item><item><title>UML 中的图</title><link>https://blog.yexca.net/archives/104/</link><pubDate>Thu, 13 Apr 2023 20:02:00 +0800</pubDate><guid>https://blog.yexca.net/archives/104/</guid><description>&lt;p>图 (Diagram) 是一组元素的图形表示，大多数情况下把图画成顶点 (代表事物) 和弧 (代表关系) 的连通图。为了对系统进行可视化，可以从不同的角度画图，这样图是对系统的投影&lt;/p></description></item><item><title>UML</title><link>https://blog.yexca.net/archives/103/</link><pubDate>Tue, 11 Apr 2023 08:01:00 +0800</pubDate><guid>https://blog.yexca.net/archives/103/</guid><description>&lt;p>面向对象分析强调的是对一个系统中对象的特征和行为的定义。目前，国际上已经出现了多种面向对象的方法。业界普遍接受的为 UML (Unified Modeling Language, 统一建模语言)&lt;/p>
&lt;p>统一建模语言是面向对象软件的标准化建模语言。由于其简单、统一，又能够表达软件设计中的动态和静态信息，目前已经成为可视化建模语言事实上的工业标准&lt;/p></description></item><item><title>服务器用 Docker 部署记录</title><link>https://blog.yexca.net/archives/102/</link><pubDate>Tue, 04 Apr 2023 22:31:45 +0800</pubDate><guid>https://blog.yexca.net/archives/102/</guid><description>&lt;p>从想法产生到彻底实现，一共耗时三个月 &lt;del>(主要是太懒了)&lt;/del>&lt;/p>
&lt;h2 id="安装-docker">安装 Docker
&lt;/h2>&lt;p>使用了 APT 进行安装 (系统为 Debian)&lt;/p>
&lt;ol>
&lt;li>添加 HTTPS 传输的软件包以及 CA 证书&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 先更新一下&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">sudo apt-get update
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 然后安装&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">sudo apt-get install &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> apt-transport-https &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> ca-certificates &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> curl &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> gnupg &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> lsb-release
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="2">
&lt;li>为了确认所下载软件包的合法性，需要添加软件源的 GPG 密钥&lt;/li>
&lt;/ol>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 国内源&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg &lt;span class="p">|&lt;/span> sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 官方源&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl -fsSL https://download.docker.com/linux/debian/gpg &lt;span class="p">|&lt;/span> sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;ol start="3">
&lt;li>向 &lt;em>sources.list&lt;/em> 中添加 Docker 软件源&lt;/li>
&lt;/ol>
&lt;blockquote>
&lt;p>首先需要确定 Debian 的版本号，然后替换下面命令的 &lt;code>$(lsb_release -cs)&lt;/code>&lt;/p></description></item><item><title>软件工程-软件质量与软件工具</title><link>https://blog.yexca.net/archives/101/</link><pubDate>Mon, 03 Apr 2023 19:59:00 +0800</pubDate><guid>https://blog.yexca.net/archives/101/</guid><description>&lt;p>软件工程系列文章六&lt;/p>
&lt;p>软件质量是指反映软件系统或软件产品满足规定或隐含需求的能力的特征和特性全体&lt;/p>
&lt;p>软件质量管理是指对软件开发过程进行独立的检查活动，由质量保证、质量规划和质量控制 3 个主要活动构成&lt;/p></description></item><item><title>软件工程-软件项目管理</title><link>https://blog.yexca.net/archives/100/</link><pubDate>Sun, 02 Apr 2023 06:58:00 +0800</pubDate><guid>https://blog.yexca.net/archives/100/</guid><description>&lt;p>软件工程系列文章五&lt;/p>
&lt;p>软件项目的成功率非常低的原因可能就是项目管理能力太弱。由于软件本身的特殊性及复杂性，将项目管理思想引入软件工程领域，就形成了软件项目管理&lt;/p></description></item><item><title>软件工程-系统维护概述</title><link>https://blog.yexca.net/archives/99/</link><pubDate>Fri, 31 Mar 2023 07:57:00 +0800</pubDate><guid>https://blog.yexca.net/archives/99/</guid><description>&lt;p>软件工程系列文章四&lt;/p>
&lt;p>软件维护是软件生命周期的最后一个阶段，处于系统投入生产性运行之后的时期中，因此不属于系统开发过程。软件维护是在软件已经交付使用之后为了改正错误或满足新的需求而修改软件的过程，即软件在交付使用后对软件所做的一切改动&lt;/p></description></item><item><title>软件工程-系统测试</title><link>https://blog.yexca.net/archives/98/</link><pubDate>Wed, 29 Mar 2023 19:56:57 +0800</pubDate><guid>https://blog.yexca.net/archives/98/</guid><description>&lt;p>软件工程系列文章三&lt;/p>
&lt;h2 id="系统测试的意义目的及原则">系统测试的意义、目的及原则
&lt;/h2>&lt;p>系统测试是为了发现错误而执行程序的过程，成功的测试是发现了至今尚未发现的错误的测试&lt;/p>
&lt;p>测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。用户应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例，并利用这些实例来运行程序，以便发现错误的过程&lt;/p></description></item><item><title>软件工程-需求分析与系统设计</title><link>https://blog.yexca.net/archives/97/</link><pubDate>Wed, 29 Mar 2023 17:04:45 +0800</pubDate><guid>https://blog.yexca.net/archives/97/</guid><description>&lt;p>软件工程系列文章二&lt;/p>
&lt;h2 id="软件生存周期">软件生存周期
&lt;/h2>&lt;ol>
&lt;li>可行性分析与项目开发计划&lt;/li>
&lt;li>需求分析&lt;/li>
&lt;li>概要设计&lt;/li>
&lt;li>详细设计&lt;/li>
&lt;li>编码&lt;/li>
&lt;li>测试&lt;/li>
&lt;li>维护&lt;/li>
&lt;/ol>
&lt;h2 id="软件需求">软件需求
&lt;/h2>&lt;p>在进行需求获取之前，首先要明确需要获取什么，也就是需求包含哪些内容。软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望&lt;/p></description></item><item><title>软件工程-软件过程与软件过程模型</title><link>https://blog.yexca.net/archives/96/</link><pubDate>Tue, 28 Mar 2023 15:45:47 +0800</pubDate><guid>https://blog.yexca.net/archives/96/</guid><description>&lt;p>软件工程系列文章一&lt;/p>
&lt;h2 id="软件过程">软件过程
&lt;/h2>&lt;p>软件开发的中所遵循的线路图称为 &amp;ldquo;软件过程&amp;rdquo;&lt;/p>
&lt;h3 id="能力成熟度模型-cmm">能力成熟度模型 (CMM)
&lt;/h3>&lt;p>CMM 将软件过程改进分为以下 5 个成熟度级别&lt;/p>
&lt;ol>
&lt;li>初始级 (Initial)&lt;/li>
&lt;/ol>
&lt;p>​ 软件的特点是杂乱无章，有时甚至很混乱，几乎没有明确定义的步骤，项目的完成完全依赖个人的努力和英雄式核心人物的作用&lt;/p></description></item><item><title>Git 学习</title><link>https://blog.yexca.net/archives/95/</link><pubDate>Sun, 05 Mar 2023 15:03:43 +0800</pubDate><guid>https://blog.yexca.net/archives/95/</guid><description>&lt;p>整理一下自己学的 Git 相关的内容吧&lt;/p>
&lt;h2 id="一安装">一、安装
&lt;/h2>&lt;ul>
&lt;li>在 Windows 上安装 Git&lt;/li>
&lt;/ul>
&lt;p>从 Git 官网下载安装：
&lt;a class="link" href="https://git-scm.com/download/win"
target="_blank" rel="noopener"
>
https://git-scm.com/download/win
&lt;/a>
&lt;/p>
&lt;p>安装完成后运行一次 &lt;em>Git Bash&lt;/em>&lt;/p>
&lt;ul>
&lt;li>在 Linux 上安装 Git&lt;/li>
&lt;/ul>
&lt;p>Debian：&lt;code>sudo apt-get install git&lt;/code>&lt;/p>
&lt;p>Fedora：&lt;code>dnf install git&lt;/code>&lt;/p></description></item><item><title>数据库记录已下载画师作品</title><link>https://blog.yexca.net/archives/94/</link><pubDate>Thu, 02 Mar 2023 10:16:38 +0800</pubDate><guid>https://blog.yexca.net/archives/94/</guid><description>&lt;p>秉持着 &amp;ldquo;不在自己硬盘的东西就不是自己的&amp;rdquo; 的原则，以及个人手机中日益增多的图片迫切需要整理放入硬盘中保存，以缓解手机内存危机，于是决定采取分画师下载储存。于是便需要一个方便记录，快速查询修改的方法，原来使用 Markdown 的清单，可随着画师增多，查询不免变得很慢&lt;/p></description></item><item><title>面向对象基础</title><link>https://blog.yexca.net/archives/93/</link><pubDate>Sat, 25 Feb 2023 19:34:30 +0800</pubDate><guid>https://blog.yexca.net/archives/93/</guid><description>&lt;p>面向对象 (Object-Oriented, OO) 是一种非常实用的系统化软件开发方法&lt;/p>
&lt;h2 id="面向过程和面向对象">面向过程和面向对象
&lt;/h2>&lt;p>以一个问题引入：把大象装进冰箱，需要几步？&lt;/p>
&lt;p>一般先打开冰箱，然后把大象装进冰箱，最后关上冰箱&lt;/p>
&lt;h3 id="面向过程">面向过程：
&lt;/h3>&lt;p>关心我该怎么做？一步步去实现这个功能&lt;/p></description></item><item><title>数据库学习七 数据库的控制功能</title><link>https://blog.yexca.net/archives/92/</link><pubDate>Sun, 12 Feb 2023 08:15:00 +0800</pubDate><guid>https://blog.yexca.net/archives/92/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论:
&lt;a class="link" href="https://blog.yexca.net/archives/86"
>
https://blog.yexca.net/archives/86
&lt;/a>
&lt;br>
数据库学习二 关系模型:
&lt;a class="link" href="https://blog.yexca.net/archives/87"
>
https://blog.yexca.net/archives/87
&lt;/a>
&lt;br>
数据库学习三 SQL 语言:
&lt;a class="link" href="https://blog.yexca.net/archives/88"
>
https://blog.yexca.net/archives/88
&lt;/a>
&lt;br>
数据库学习四 关系数据库理论:
&lt;a class="link" href="https://blog.yexca.net/archives/89"
>
https://blog.yexca.net/archives/89
&lt;/a>
&lt;br>
数据库学习五 范式:
&lt;a class="link" href="https://blog.yexca.net/archives/90"
>
https://blog.yexca.net/archives/90
&lt;/a>
&lt;br>
数据库学习六 数据库设计:
&lt;a class="link" href="https://blog.yexca.net/archives/91"
>
https://blog.yexca.net/archives/91
&lt;/a>
&lt;br>
数据库学习七 数据库的控制功能: 本文&lt;/p></description></item><item><title>数据库学习六 数据库设计</title><link>https://blog.yexca.net/archives/91/</link><pubDate>Sat, 11 Feb 2023 08:15:00 +0800</pubDate><guid>https://blog.yexca.net/archives/91/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论:
&lt;a class="link" href="https://blog.yexca.net/archives/86"
>
https://blog.yexca.net/archives/86
&lt;/a>
&lt;br>
数据库学习二 关系模型:
&lt;a class="link" href="https://blog.yexca.net/archives/87"
>
https://blog.yexca.net/archives/87
&lt;/a>
&lt;br>
数据库学习三 SQL 语言:
&lt;a class="link" href="https://blog.yexca.net/archives/88"
>
https://blog.yexca.net/archives/88
&lt;/a>
&lt;br>
数据库学习四 关系数据库理论:
&lt;a class="link" href="https://blog.yexca.net/archives/89"
>
https://blog.yexca.net/archives/89
&lt;/a>
&lt;br>
数据库学习五 范式:
&lt;a class="link" href="https://blog.yexca.net/archives/90"
>
https://blog.yexca.net/archives/90
&lt;/a>
&lt;br>
数据库学习六 数据库设计: 本文&lt;br>
数据库学习七 数据库的控制功能:
&lt;a class="link" href="https://blog.yexca.net/archives/92"
>
https://blog.yexca.net/archives/92
&lt;/a>
&lt;/p></description></item><item><title>数据库学习五 范式</title><link>https://blog.yexca.net/archives/90/</link><pubDate>Fri, 10 Feb 2023 08:13:00 +0800</pubDate><guid>https://blog.yexca.net/archives/90/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论:
&lt;a class="link" href="https://blog.yexca.net/archives/86"
>
https://blog.yexca.net/archives/86
&lt;/a>
&lt;br>
数据库学习二 关系模型:
&lt;a class="link" href="https://blog.yexca.net/archives/87"
>
https://blog.yexca.net/archives/87
&lt;/a>
&lt;br>
数据库学习三 SQL 语言:
&lt;a class="link" href="https://blog.yexca.net/archives/88"
>
https://blog.yexca.net/archives/88
&lt;/a>
&lt;br>
数据库学习四 关系数据库理论:
&lt;a class="link" href="https://blog.yexca.net/archives/89"
>
https://blog.yexca.net/archives/89
&lt;/a>
&lt;br>
数据库学习五 范式: 本文&lt;br>
数据库学习六 数据库设计:
&lt;a class="link" href="https://blog.yexca.net/archives/91"
>
https://blog.yexca.net/archives/91
&lt;/a>
&lt;br>
数据库学习七 数据库的控制功能:
&lt;a class="link" href="https://blog.yexca.net/archives/92"
>
https://blog.yexca.net/archives/92
&lt;/a>
&lt;/p></description></item><item><title>数据库学习四 关系数据库理论</title><link>https://blog.yexca.net/archives/89/</link><pubDate>Thu, 09 Feb 2023 08:10:00 +0800</pubDate><guid>https://blog.yexca.net/archives/89/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论:
&lt;a class="link" href="https://blog.yexca.net/archives/86"
>
https://blog.yexca.net/archives/86
&lt;/a>
&lt;br>
数据库学习二 关系模型:
&lt;a class="link" href="https://blog.yexca.net/archives/87"
>
https://blog.yexca.net/archives/87
&lt;/a>
&lt;br>
数据库学习三 SQL 语言:
&lt;a class="link" href="https://blog.yexca.net/archives/88"
>
https://blog.yexca.net/archives/88
&lt;/a>
&lt;br>
数据库学习四 关系数据库理论: 本文&lt;br>
数据库学习五 范式:
&lt;a class="link" href="https://blog.yexca.net/archives/90"
>
https://blog.yexca.net/archives/90
&lt;/a>
&lt;br>
数据库学习六 数据库设计:
&lt;a class="link" href="https://blog.yexca.net/archives/91"
>
https://blog.yexca.net/archives/91
&lt;/a>
&lt;br>
数据库学习七 数据库的控制功能:
&lt;a class="link" href="https://blog.yexca.net/archives/92"
>
https://blog.yexca.net/archives/92
&lt;/a>
&lt;/p></description></item><item><title>数据库学习三 SQL 语言</title><link>https://blog.yexca.net/archives/88/</link><pubDate>Wed, 08 Feb 2023 08:00:00 +0800</pubDate><guid>https://blog.yexca.net/archives/88/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论:
&lt;a class="link" href="https://blog.yexca.net/archives/86"
>
https://blog.yexca.net/archives/86
&lt;/a>
&lt;br>
数据库学习二 关系模型:
&lt;a class="link" href="https://blog.yexca.net/archives/87"
>
https://blog.yexca.net/archives/87
&lt;/a>
&lt;br>
数据库学习三 SQL 语言: 本文&lt;br>
数据库学习四 关系数据库理论:
&lt;a class="link" href="https://blog.yexca.net/archives/89"
>
https://blog.yexca.net/archives/89
&lt;/a>
&lt;br>
数据库学习五 范式:
&lt;a class="link" href="https://blog.yexca.net/archives/90"
>
https://blog.yexca.net/archives/90
&lt;/a>
&lt;br>
数据库学习六 数据库设计:
&lt;a class="link" href="https://blog.yexca.net/archives/91"
>
https://blog.yexca.net/archives/91
&lt;/a>
&lt;br>
数据库学习七 数据库的控制功能:
&lt;a class="link" href="https://blog.yexca.net/archives/92"
>
https://blog.yexca.net/archives/92
&lt;/a>
&lt;/p></description></item><item><title>数据库学习二 关系模型</title><link>https://blog.yexca.net/archives/87/</link><pubDate>Tue, 07 Feb 2023 06:00:00 +0800</pubDate><guid>https://blog.yexca.net/archives/87/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论:
&lt;a class="link" href="https://blog.yexca.net/archives/86"
>
https://blog.yexca.net/archives/86
&lt;/a>
&lt;br>
数据库学习二 关系模型: 本文&lt;br>
数据库学习三 SQL 语言:
&lt;a class="link" href="https://blog.yexca.net/archives/88"
>
https://blog.yexca.net/archives/88
&lt;/a>
&lt;br>
数据库学习四 关系数据库理论:
&lt;a class="link" href="https://blog.yexca.net/archives/89"
>
https://blog.yexca.net/archives/89
&lt;/a>
&lt;br>
数据库学习五 范式:
&lt;a class="link" href="https://blog.yexca.net/archives/90"
>
https://blog.yexca.net/archives/90
&lt;/a>
&lt;br>
数据库学习六 数据库设计:
&lt;a class="link" href="https://blog.yexca.net/archives/91"
>
https://blog.yexca.net/archives/91
&lt;/a>
&lt;br>
数据库学习七 数据库的控制功能:
&lt;a class="link" href="https://blog.yexca.net/archives/92"
>
https://blog.yexca.net/archives/92
&lt;/a>
&lt;/p></description></item><item><title>数据库学习一 数据库导论</title><link>https://blog.yexca.net/archives/86/</link><pubDate>Mon, 06 Feb 2023 19:57:35 +0800</pubDate><guid>https://blog.yexca.net/archives/86/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>之前数据库的写的很不好看，重新复习编写一下 (虽然这个也挺乱就是了)&lt;/p>
&lt;blockquote>
&lt;p>&lt;strong>SQL Series&lt;/strong>&lt;/p>
&lt;p>数据库学习一 数据库导论: 本文&lt;br>
数据库学习二 关系模型:
&lt;a class="link" href="https://blog.yexca.net/archives/87"
>
https://blog.yexca.net/archives/87
&lt;/a>
&lt;br>
数据库学习三 SQL 语言:
&lt;a class="link" href="https://blog.yexca.net/archives/88"
>
https://blog.yexca.net/archives/88
&lt;/a>
&lt;br>
数据库学习四 关系数据库理论:
&lt;a class="link" href="https://blog.yexca.net/archives/89"
>
https://blog.yexca.net/archives/89
&lt;/a>
&lt;br>
数据库学习五 范式:
&lt;a class="link" href="https://blog.yexca.net/archives/90"
>
https://blog.yexca.net/archives/90
&lt;/a>
&lt;br>
数据库学习六 数据库设计:
&lt;a class="link" href="https://blog.yexca.net/archives/91"
>
https://blog.yexca.net/archives/91
&lt;/a>
&lt;br>
数据库学习七 数据库的控制功能:
&lt;a class="link" href="https://blog.yexca.net/archives/92"
>
https://blog.yexca.net/archives/92
&lt;/a>
&lt;/p></description></item><item><title>Linux 学习 第十二章 管理磁盘和文件系统</title><link>https://blog.yexca.net/archives/85/</link><pubDate>Tue, 03 Jan 2023 13:37:48 +0800</pubDate><guid>https://blog.yexca.net/archives/85/</guid><description>&lt;h2 id="第十二章-管理磁盘和文件系统">第十二章 管理磁盘和文件系统
&lt;/h2>&lt;h3 id="121-了解磁盘存储器">12.1 了解磁盘存储器
&lt;/h3>&lt;p>在大多数现代操作系统中，数据存储器的基本工作原理都是相同的。磁盘用作永久存储器，而 RAM (Random Access Memory，随机存储器) 和交换区则用作临时存储器。例如，当运行一条命令时，该命令将从硬盘复制到 RAM，以便计算机处理器 (CPU) 可以更快地访问该命令&lt;/p></description></item><item><title>Linux 学习 第十一章 获取用户账户</title><link>https://blog.yexca.net/archives/84/</link><pubDate>Mon, 02 Jan 2023 12:29:03 +0800</pubDate><guid>https://blog.yexca.net/archives/84/</guid><description>&lt;h2 id="第十一章-获取用户账户">第十一章 获取用户账户
&lt;/h2>&lt;p>用户账户保持了使用系统的人与运行在系统中的进程之间的边界，而组是一种将系统的权限一次性分配给多个用户的方法&lt;/p>
&lt;h3 id="111-创建用户账户">11.1 创建用户账户
&lt;/h3>&lt;p>每一个使用 Linux 系统的人都应该有一个单独的用户账户。通过拥有一个用户账户，可以提供用来完全存储文件的区域，以及调整用户界面 (GUI、路径、环境变量等) ，从而适合用户使用电脑的习惯&lt;/p></description></item><item><title>Linux 学习 第十章 获取和管理软件</title><link>https://blog.yexca.net/archives/83/</link><pubDate>Thu, 08 Dec 2022 16:35:57 +0800</pubDate><guid>https://blog.yexca.net/archives/83/</guid><description>&lt;h2 id="第十章-获取和管理软件">第十章 获取和管理软件
&lt;/h2>&lt;h3 id="101-在桌面管理软件">10.1 在桌面管理软件
&lt;/h3>&lt;p>通过软件与 GUI 管理&lt;/p>
&lt;h3 id="102-超越-software-窗口">10.2 超越 Software 窗口
&lt;/h3>&lt;p>Software 中能检索到的软件有限&lt;/p>
&lt;h3 id="103-了解-linux-rpm-和-deb-软件包">10.3 了解 Linux RPM 和 DEB 软件包
&lt;/h3>&lt;p>软件包称为 tarball (压缩包)，包含可执行文件 (命令)、文档、配置文件以及库&lt;/p></description></item><item><title>Linux 学习 第八、九章 学习系统管理与安装 Linux</title><link>https://blog.yexca.net/archives/82/</link><pubDate>Wed, 07 Dec 2022 16:29:05 +0800</pubDate><guid>https://blog.yexca.net/archives/82/</guid><description>&lt;h2 id="第八章-学习系统管理">第八章 学习系统管理
&lt;/h2>&lt;h3 id="81-理解系统管理">8.1 理解系统管理
&lt;/h3>&lt;ul>
&lt;li>
&lt;p>su 命令 &amp;mdash; 以 root 用户身份打开一个 shell&lt;/p>
&lt;/li>
&lt;li>
&lt;p>sudo 命令 &amp;mdash; 普通用户通过此命令运行其他命令时，该才会被赋予 root 权限&lt;/p>
&lt;/li>
&lt;/ul>
&lt;h3 id="82-使用图形化管理工具">8.2 使用图形化管理工具
&lt;/h3>&lt;p>Cockpit 是基于浏览器的系统管理工具&lt;/p></description></item><item><title>Linux 学习 第七章 编写简单的 shell 脚本</title><link>https://blog.yexca.net/archives/81/</link><pubDate>Mon, 05 Dec 2022 20:47:43 +0800</pubDate><guid>https://blog.yexca.net/archives/81/</guid><description>&lt;h2 id="第七章-编写简单的-shell-脚本">第七章 编写简单的 shell 脚本
&lt;/h2>&lt;p>如果需要反复执行某一任务，而该任务又需要输入大量的命令行，那么可以通过写入 shell 脚本以实现一条命令完成所有任务&lt;/p>
&lt;h3 id="71-理解-shell-脚本">7.1 理解 shell 脚本
&lt;/h3>&lt;p>shell 脚本是一组包含命令、函数、变量或其他可以通过 shell 使用的功能。这些项目被输入一个纯文本文件中，而该文件可以作为一条命令来运行&lt;/p></description></item><item><title>欧姆社漫画数字电路读后</title><link>https://blog.yexca.net/archives/80/</link><pubDate>Sun, 04 Dec 2022 16:54:29 +0800</pubDate><guid>https://blog.yexca.net/archives/80/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最近？看了《漫画数字电路》一书，大概记录一下&lt;/p>
&lt;p>书上的很多东西并没有记录在此处&lt;/p>
&lt;h2 id="前述">前述
&lt;/h2>&lt;p>数字电路分 组合电路 与 时序电路&lt;/p>
&lt;p>组合电路：现在输入信息的组合决定输出的电路&lt;/p></description></item><item><title>Linux 学习 第六章 管理运行中的进程</title><link>https://blog.yexca.net/archives/79/</link><pubDate>Sat, 03 Dec 2022 15:07:03 +0800</pubDate><guid>https://blog.yexca.net/archives/79/</guid><description>&lt;h2 id="第六章-管理运行中的进程">第六章 管理运行中的进程
&lt;/h2>&lt;p>Linux 是一种多用户的操作系统，也是一种多任务系统。多任务意味着可以同时运行多个程序，运行程序的实例通常被称为进程&lt;/p>
&lt;p>可通过 shell 启动、暂停、停止或杀死进程，还可将进程放到后台以及带到前台&lt;/p></description></item><item><title>Linux 学习 第五章 使用文本文件</title><link>https://blog.yexca.net/archives/78/</link><pubDate>Sat, 19 Nov 2022 21:07:03 +0800</pubDate><guid>https://blog.yexca.net/archives/78/</guid><description>&lt;h2 id="第五章-使用文本文件">第五章 使用文本文件
&lt;/h2>&lt;p>Linux 的大多数配置通过编辑纯文本文件完成。无论是修改 /etc 目录的文件配置本地服务，还是编辑 Ansible 目录文件配置主机的集合，纯文本文件仍然在这些任务中普遍使用&lt;/p></description></item><item><title>NovelAI 绘图 (WebUI)</title><link>https://blog.yexca.net/archives/77/</link><pubDate>Sun, 30 Oct 2022 16:23:07 +0800</pubDate><guid>https://blog.yexca.net/archives/77/</guid><description>&lt;p>使用 Windows11 部署，其他系统 (如 Linux ) 请参考：
&lt;a class="link" href="https://github.com/AUTOMATIC1111/stable-diffusion-webui#automatic-installation-on-linux"
target="_blank" rel="noopener"
>
AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI
&lt;/a>
&lt;/p>
&lt;h2 id="空间占用">空间占用
&lt;/h2>&lt;p>程序：5.3GiB (不含模型)&lt;/p>
&lt;p>运行：5.5GiB 以上&lt;/p>
&lt;p>请确保 C 盘空间至少 6GiB 再运行，否则电脑可能黑屏卡死&lt;/p></description></item><item><title>虚拟机中 Arch Linux 安装记录</title><link>https://blog.yexca.net/archives/76/</link><pubDate>Sun, 02 Oct 2022 13:39:26 +0800</pubDate><guid>https://blog.yexca.net/archives/76/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>使用虚拟机安装，软件为 Fedora 的 &lt;em>盒子&lt;/em>&lt;/p>
&lt;h2 id="安装前准备">安装前准备
&lt;/h2>&lt;h3 id="下载镜像">下载镜像
&lt;/h3>&lt;p>从
&lt;a class="link" href="https://archlinux.org/download/"
target="_blank" rel="noopener"
>
官方下载页面
&lt;/a>
下载，推荐使用 BT 下载 (请使用正规 torrent 客户端，例如
&lt;a class="link" href="https://www.qbittorrent.org/"
target="_blank" rel="noopener"
>
qBittorrent
&lt;/a>
)&lt;/p>
&lt;p>然后放到虚拟机里&lt;/p>
&lt;h3 id="验证引导模式">验证引导模式
&lt;/h3>&lt;p>列出 efivars 目录&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">ls /sys/firmware/efi/efivars
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>如果正确显示目录并且没有报告错误，则系统以 UEFI 模式引导，如果目录不存在，则可能以
&lt;a class="link" href="https://zh.wikipedia.org/wiki/BIOS"
target="_blank" rel="noopener"
>
BIOS
&lt;/a>
模式引导 (或 CSM 模式)&lt;/p></description></item><item><title>Linux 学习 第四章 在文件系统中移动</title><link>https://blog.yexca.net/archives/75/</link><pubDate>Sun, 25 Sep 2022 20:35:02 +0800</pubDate><guid>https://blog.yexca.net/archives/75/</guid><description>&lt;h2 id="第四章-在文件系统中移动">第四章 在文件系统中移动
&lt;/h2>&lt;p>Linux 文件系统存储了计算机上所有的信息&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>目录&lt;/th>
&lt;th>描述&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>/bin&lt;/td>
&lt;td>包含常见的 Linux 用户命令，比如 ls、sort、date 和 chmod&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/boot&lt;/td>
&lt;td>包含可启动的 Linux 内核、最初的 RAM 盘和启动加载程序的配置文件 (GRUB)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/dev&lt;/td>
&lt;td>包含用来表示系统中设备访问点的文件。这些设备包括终端设备 (tty*) 、硬盘驱动器 (hd* 或 sd*) 、RAM (ram*) 以及 CD-ROM (cd*) 。用户可以直接通过这些设备文件访问相应的设备；然而，应用程序通常会对最终用户隐藏实际的设备名称&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/etc&lt;/td>
&lt;td>包含管理配置文件。其中大多数文件都是纯文本文件，只要用户拥有适当的权限，就可以使用任何文本编辑器编辑这些配置文件&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/home&lt;/td>
&lt;td>包含分配给每个带有登录账号的普通用户的目录 (root 用户是一个例外，使用 /root 作为主目录)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/media&lt;/td>
&lt;td>为自动挂载设备 (特别是可移动介质) 提供了一个标准位置。如果介质有一个卷名，那么一般来说使用该卷名作为挂载点&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/lib&lt;/td>
&lt;td>包含 /bin 和 /sbin 目录中的应用程序启动系统所需的共享库&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/mnt&lt;/td>
&lt;td>在该目录被标准的 /media 目录取代之前，/mnt 目录是许多设备常见的挂载点。一些可启动的 Linux 系统仍使用该目录来挂载硬盘分区和远程文件系统。此外很多人也在使用该目录临时挂载那些不需要永久挂载的本地或远程文件系统&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/misc&lt;/td>
&lt;td>该目录有时用来根据请求自动挂载文件系统&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/opt&lt;/td>
&lt;td>用来存储附加应用程序软件的目录结构&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/proc&lt;/td>
&lt;td>包含关于系统资源的信息&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/root&lt;/td>
&lt;td>表示 root 用户的主目录。因安全原因，没有位于 /home&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/sbin&lt;/td>
&lt;td>包含管理命令和守护进程&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/sys&lt;/td>
&lt;td>包含用于调优块存储和管理 cgroups 的参数&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/tmp&lt;/td>
&lt;td>包含应用程序使用的临时文件&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/usr&lt;/td>
&lt;td>包含用户文档、游戏、图形文件 (X11) 、库 (lib) 以及其他不需要在启动过程中使用的命令和文件。/usr 目录中的文件在安装完毕就不可更改。理论上来讲，/usr 可以采用只读方式挂载&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/var&lt;/td>
&lt;td>包含不同应用程序所使用的数据目录。尤其可以在该目录中放置作为 FTP 服务器 (/var/ftp) 或 Web 服务器 (/var/www) 共享的文件。还包含所有的系统日至文件 (/var/log) 以及假脱机文件 (/var/spool，如 mail、cups 和 news) 。/var 目录所包含的目录和文件经常被修改。在服务器计算机上，通常会创建一个 /var 目录作为一个单独的文本系统，使用一个易于拓展的文件系统&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="41-使用基本的文件系统命令">4.1 使用基本的文件系统命令
&lt;/h3>&lt;p>&lt;code>cd&lt;/code> 、&lt;code>pwd&lt;/code> 、&lt;code>mkdir&lt;/code> 、&lt;code>rmdir&lt;/code> 、&lt;code>ls&lt;/code> 、&lt;code>touch&lt;/code>&lt;/p></description></item><item><title>Fedora 桌面折腾</title><link>https://blog.yexca.net/archives/74/</link><pubDate>Sun, 18 Sep 2022 11:10:58 +0800</pubDate><guid>https://blog.yexca.net/archives/74/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>应该是最近的最后一次折腾了，不过启用很多插件后开机后要很久才显示桌面，之后要禁用一些不常用的&lt;/p>
&lt;h2 id="主题">主题
&lt;/h2>&lt;p>通过
&lt;a class="link" href="https://blog.yexca.net/archives/129"
>
阅读书籍
&lt;/a>
得知
&lt;a class="link" href="https://www.gnome-look.org/s/Gnome/browse/"
target="_blank" rel="noopener"
>
GNOME 的主题网站
&lt;/a>
，然后去逛了下，打开第一个主题就深深吸引了我&lt;/p></description></item><item><title>个人内网折腾</title><link>https://blog.yexca.net/archives/73/</link><pubDate>Fri, 16 Sep 2022 15:00:01 +0800</pubDate><guid>https://blog.yexca.net/archives/73/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>人嘛，有了比较好的就会追求更好的，欲望无穷无尽。本想整 NAS，奈何经济实力不够，于是通过四个项目在自己电脑整了入口、动画、漫画以及音声库，那么&lt;/p></description></item><item><title>WordPress 数据库禁用插件</title><link>https://blog.yexca.net/archives/72/</link><pubDate>Thu, 15 Sep 2022 22:17:02 +0800</pubDate><guid>https://blog.yexca.net/archives/72/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>启用某插件后台 502 了&lt;/p>
&lt;h2 id="进入数据库">进入数据库
&lt;/h2>&lt;ol>
&lt;li>
&lt;p>选择进入 wp_options 表&lt;/p>
&lt;/li>
&lt;li>
&lt;p>找到 active_plugins 条目，一般在第二页&lt;/p>
&lt;/li>
&lt;li>
&lt;p>编辑此项目的 option_value 行&lt;/p>
&lt;/li>
&lt;/ol>
&lt;h2 id="删除不要的插件">删除不要的插件
&lt;/h2>&lt;p>&lt;em>&lt;strong>注意：删除前先备份！！！&lt;/strong>&lt;/em>&lt;/p>
&lt;ol>
&lt;li>
&lt;p>找到不需要的插件的名字&lt;/p>
&lt;p>删除从 &lt;code>i&lt;/code> 开始到 &lt;code>;&lt;/code>，例如 &lt;code>i:1;s:23:&amp;quot;elementor/elementor.php&amp;quot;;&lt;/code>&lt;/p>
&lt;/li>
&lt;li>
&lt;p>更改序号，也就是 &lt;code>i,&lt;/code> 后的数字&lt;/p></description></item><item><title>Fedora 安装 Komga 折腾记录</title><link>https://blog.yexca.net/archives/71/</link><pubDate>Wed, 14 Sep 2022 18:47:16 +0800</pubDate><guid>https://blog.yexca.net/archives/71/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>为了在内网更方便得看漫画&lt;/p>
&lt;h2 id="ip-设置">IP 设置
&lt;/h2>&lt;p>路由器为 OpenWRT 系统&lt;/p>
&lt;h3 id="路由器设置">路由器设置
&lt;/h3>&lt;p>在 &lt;em>网络- IP/MAC 绑定&lt;/em> 将电脑绑定一个固定的 IP&lt;/p>
&lt;h3 id="fedora-设置">Fedora 设置
&lt;/h3>&lt;p>因为我设置的 IP 与自动分配的不一致 (有线连接) ，固需要手动修改&lt;/p></description></item><item><title>SSH 公钥登录</title><link>https://blog.yexca.net/archives/70/</link><pubDate>Mon, 12 Sep 2022 19:24:25 +0800</pubDate><guid>https://blog.yexca.net/archives/70/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>每次连接机子都要输入密码属实有点麻烦 &lt;del>(因为我忘了&lt;/del>&lt;/p>
&lt;h2 id="oneclick">OneClick
&lt;/h2>&lt;p>如果自己的电脑没有公钥需要先生成，一般在 &lt;code>~/.ssh/id_rsa.pub&lt;/code>&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">ssh-keygen
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>然后在自己的电脑上运行下个命令&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">ssh-copy-id username@RemoteIP
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>其中 &lt;code>username&lt;/code> 替换为要登录的账户，&lt;code>RemoteIP&lt;/code> 替换为要登录的 IP 地址&lt;/p></description></item><item><title>Linux 学习 第三章 使用 shell</title><link>https://blog.yexca.net/archives/69/</link><pubDate>Mon, 12 Sep 2022 15:04:10 +0800</pubDate><guid>https://blog.yexca.net/archives/69/</guid><description>&lt;h2 id="第三章-使用-shell">第三章 使用 shell
&lt;/h2>&lt;p>本章介绍的 Linux shell 称为 Bash shell，其全称为 Bourne Again shell。还有其他的 shell，例如在 BSD UNIX 用户中流行的 C shell (csh) ，以及在 UNIX System V 用户中非常流行的 Korn shel (ksh) ，Ubuntu 默认启动 Dash shell (速度比 Bash快) ，还有 Tcsh shell (一种改进的 C shell) 和 Ash shell (与 Bourne shell 非常相似)&lt;/p></description></item><item><title>Linux 下载 youtube 视频</title><link>https://blog.yexca.net/archives/68/</link><pubDate>Sat, 10 Sep 2022 19:29:58 +0800</pubDate><guid>https://blog.yexca.net/archives/68/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>既然都有Win命令行了，那怎么能没有Linux呢&lt;/p>
&lt;p>Windows的文章：
&lt;a class="link" href="http://blog.yexca.net/archives/52"
target="_blank" rel="noopener"
>
命令行下载YouTube视频
&lt;/a>
&lt;/p>
&lt;h2 id="下载yt-dlp">下载yt-dlp
&lt;/h2>&lt;p>建议配置好Python环境，然后到
&lt;a class="link" href="https://github.com/yt-dlp/yt-dlp/releases"
target="_blank" rel="noopener"
>
Releases · yt-dlp/yt-dlp · GitHub
&lt;/a>
下载&lt;em>yt-dlp&lt;/em>，如果不想配置Python就下载&lt;em>yt-dlp_linux&lt;/em>&lt;/p></description></item><item><title>萌百黑幕在 Argon 主题 WordPress 实现</title><link>https://blog.yexca.net/archives/67/</link><pubDate>Mon, 05 Sep 2022 21:51:23 +0800</pubDate><guid>https://blog.yexca.net/archives/67/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>这个黑幕很好玩啊，非常好玩啊，可惜首页无法渲染出来，而且 Markdown 编写渲染也难&lt;/p>
&lt;h2 id="使用">使用
&lt;/h2>&lt;p>编写文章时选择&lt;em>作为HTML编辑&lt;/em>，插入以下语句&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">span&lt;/span> &lt;span class="na">class&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;heimu&amp;#34;&lt;/span> &lt;span class="na">title&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;黑幕弹框里的字&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>需要隐藏的文字&lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">span&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="插入css">插入CSS
&lt;/h2>&lt;p>本是想着实现首页也有黑幕，但实际测试发现首页不会渲染 &lt;del>(为什么不渲染啊啊啊啊啊啊啊！！！！！！！试试想象 Warma 的声音)&lt;/del>&lt;/p></description></item><item><title>记录 OpenWRT 通过深澜网络认证折腾</title><link>https://blog.yexca.net/archives/66/</link><pubDate>Mon, 05 Sep 2022 21:24:23 +0800</pubDate><guid>https://blog.yexca.net/archives/66/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>记录我使用 OpenWRT 路由器连接学校网的折腾过程，虽然最后的结果挺 emm？但在这个过程中还是了解到不少东西&lt;/p>
&lt;h2 id="起始">起始
&lt;/h2>&lt;p>通过在浏览器搜索 &lt;code>openwrt通过深澜认证&lt;/code> 得到
&lt;a class="link" href="https://www.right.com.cn/forum/thread-4054114-1-1.html"
target="_blank" rel="noopener"
>
恩山无线论坛
&lt;/a>
帖子回复下的一个开源项目：
&lt;a class="link" href="https://github.com/coffeehat/BIT-srun-login-script"
target="_blank" rel="noopener"
>
coffeehat/BIT-srun-login-script
&lt;/a>
，通过项目知道了有支持多平台 (包括 openwrt) 的 golang 版本，于是开始折腾&lt;/p></description></item><item><title>ffmpeg 批量转换视频格式</title><link>https://blog.yexca.net/archives/65/</link><pubDate>Mon, 05 Sep 2022 16:41:38 +0800</pubDate><guid>https://blog.yexca.net/archives/65/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>因为接触了
&lt;a class="link" href="https://blog.yexca.net/archives/52"
>
YouTube-dl
&lt;/a>
，下载频道的所有内容非常好用，但是下载下来是 webm 格式兼容性不是太好，于是查看了使用 ffmpeg 转换格式的命令&lt;/p>
&lt;h2 id="配置文件">配置文件
&lt;/h2>&lt;p>后来发现改下配置文件就行，在文件后加上&lt;/p></description></item><item><title>HTTP 学习</title><link>https://blog.yexca.net/archives/64/</link><pubDate>Mon, 05 Sep 2022 16:03:36 +0800</pubDate><guid>https://blog.yexca.net/archives/64/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>这是在我阅读了肖佳老师的书《HTTP抓包实战》后对HTTP相关内容的总结，主要还是报文相关(记录：阅读此书与写出此文章耗时5天)&lt;/p>
&lt;h2 id="http协议报文的结构">HTTP协议报文的结构
&lt;/h2>&lt;p>HTTP报文分2个：一个是HTTP请求报文，一个是HTTP响应报文&lt;/p></description></item><item><title>Fedora 安装 java8(Oracle JDK)</title><link>https://blog.yexca.net/archives/63/</link><pubDate>Fri, 02 Sep 2022 17:37:51 +0800</pubDate><guid>https://blog.yexca.net/archives/63/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>尽管 Fedora 系统自带 java 环境，不过是 OpenJDK 。有时候还是需要使用 Oracle 的&lt;/p>
&lt;h2 id="下载">下载
&lt;/h2>&lt;p>进入官网下载：
&lt;a class="link" href="https://www.oracle.com/java/technologies/downloads/"
target="_blank" rel="noopener"
>
Java Downloads | Oracle
&lt;/a>
(下载需要登陆)&lt;/p>
&lt;p>找到 &lt;em>java8-Linux&lt;/em> ，下载 &lt;em>x64 Compressed Archive&lt;/em> (64位的压缩包版本)&lt;/p>
&lt;p>本文章写时文件名为 &lt;em>jdk-8u341-linux-x64.tar.gz&lt;/em>&lt;/p></description></item><item><title>Aria2+AriaNG 配置使用</title><link>https://blog.yexca.net/archives/62/</link><pubDate>Thu, 01 Sep 2022 23:06:38 +0800</pubDate><guid>https://blog.yexca.net/archives/62/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.icu/2022/09/01/906d191f9a59/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.icu/2022/09/01/906d191f9a59/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>Aria2是Linux下的一个下载工具,这里介绍Windows下的安装与配置,官方Aria2没有GUI界面所以配合AriaNG直接在Web界面进行操作.&lt;/p></description></item><item><title>Fiddler 抓包 HTTPS</title><link>https://blog.yexca.net/archives/61/</link><pubDate>Thu, 01 Sep 2022 08:17:32 +0800</pubDate><guid>https://blog.yexca.net/archives/61/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>默认情况下 Fiddler 仅抓包 HTTP，需要设置后才能捕获 HTTPS。现在大部分网站都是使用 HTTPS 或者 HSTS，所以开启 HTTPS 抓包是很必要的&lt;/p>
&lt;h2 id="fiddler设置">Fiddler设置
&lt;/h2>&lt;p>在 &lt;em>设置-HTTPS&lt;/em> 中勾选 &lt;em>Capture HTTPS traffic&lt;/em> 即可，下一个 &lt;em>Ignore server certificate errors(unsafe)&lt;/em> 也可勾选，不过可能不安全吧，然后保存&lt;/p></description></item><item><title>Linux 下 bin 目录</title><link>https://blog.yexca.net/archives/60/</link><pubDate>Wed, 31 Aug 2022 00:27:09 +0800</pubDate><guid>https://blog.yexca.net/archives/60/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>事实上命令文件放在哪都可自行决定，也就是自己想放哪就放哪，这些目录不过是约定，不过遵守约定会更好啦，毕竟没有人会想要自己的电脑一团糟吧，尤其是Linux&lt;/p></description></item><item><title>Fedora安装后</title><link>https://blog.yexca.net/archives/59/</link><pubDate>Wed, 24 Aug 2022 12:13:30 +0800</pubDate><guid>https://blog.yexca.net/archives/59/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>个人安装Fedora后装的一些东西&lt;/p>
&lt;h2 id="修改终端快捷键">修改终端快捷键
&lt;/h2>&lt;p>打开&lt;em>设置-键盘&lt;/em>，在最下方&lt;em>查看及自定义快捷键&lt;/em>&lt;/p>
&lt;p>自定义快捷键&lt;/p>
&lt;p>名称：Shell终端&lt;/p>
&lt;p>命令：gnome-terminal&lt;/p>
&lt;p>快捷键：自定&lt;/p></description></item><item><title>Github 拒绝访问 Connection refused</title><link>https://blog.yexca.net/archives/58/</link><pubDate>Mon, 15 Aug 2022 02:44:47 +0800</pubDate><guid>https://blog.yexca.net/archives/58/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>今日使用 Git 推送提示&lt;code>fatal: unable to access 'https://github.com/yexca-VRChat/yexca-VRChat.github.io.git/': Failed to connect to 127.0.0.1 port 1081 after 2074 ms: Connection refused&lt;/code>，重启电脑也没用，遂寻找解决方法 &lt;del>(为什么不让爷访问自己的仓库)&lt;/del>&lt;/p>
&lt;h2 id="解决过程">解决过程
&lt;/h2>&lt;p>经查阅相关资料得知与代理有关，可我代理是放路由器啊&lt;/p></description></item><item><title>搭建 Git 服务端及同步到指定目录</title><link>https://blog.yexca.net/archives/57/</link><pubDate>Sat, 13 Aug 2022 10:28:50 +0800</pubDate><guid>https://blog.yexca.net/archives/57/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>使用 Git 可以更好的和朋友一起管理代码，也便于同步代码。由于我比较喜欢静态网站，因此使用 Git 同步网页文件很是实用&lt;/p>
&lt;h2 id="安装-git">安装 Git
&lt;/h2>&lt;p>登录 ROOT 账户，依次输入以下命令&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">yum install git
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="创建用户">创建用户
&lt;/h2>&lt;p>创建一个 Git 用户组和用户，用于运行 Git 服务&lt;/p></description></item><item><title>博客视频外链引用</title><link>https://blog.yexca.net/archives/56/</link><pubDate>Fri, 12 Aug 2022 00:11:17 +0800</pubDate><guid>https://blog.yexca.net/archives/56/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.icu/2022/08/11/607cac6fe835/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.icu/2022/08/11/607cac6fe835/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>现在主流流媒体网站都支持外链嵌入代码，但是B站(&lt;del>什么时候倒闭?&lt;/del>)现在(2022/8/11)自带的外链引用默认为360P，且不能调节清晰度，非常的恶心，与Youtube相比高下立判，下面重点介绍一下B站的引用外链的参数和方法&lt;/p></description></item><item><title>RSS</title><link>https://blog.yexca.net/archives/55/</link><pubDate>Tue, 09 Aug 2022 16:08:14 +0800</pubDate><guid>https://blog.yexca.net/archives/55/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最早接触 RSS 还是逛神社的时候，但当我知道有这么个东西的时候 RSS 就几乎凋零，不过还有类似于 RSSHub 之类的还在继续为之奋斗，不过 RSSHub 时常因网络问题无法连接，慢慢的放弃了。随着发现的博客越来越多，为了能够及时获取更新以及记录自己阅读过以及未阅读的文章，我再次使用 RSS&lt;/p></description></item><item><title>记录 Grey Hack 第一个任务(获取密码)</title><link>https://blog.yexca.net/archives/54/</link><pubDate>Wed, 03 Aug 2022 22:41:06 +0800</pubDate><guid>https://blog.yexca.net/archives/54/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>昨日游玩接取第一个任务的记录，由于是复述，部分细节可能与实际情况不同&lt;/p>
&lt;h2 id="接取任务">接取任务
&lt;/h2>&lt;p>在通过某神秘人的考验后获得 &lt;code>HackShop&lt;/code> 的网站，接到第一个任务&lt;/p>
&lt;p>任务内容为&amp;quot;The client wants the login credentials of the user &lt;strong>Daronane&lt;/strong>. The remote ip of the victim is &lt;strong>54.44.37.52&lt;/strong>. It&amp;rsquo;s important that you access the correct machine behind the public ip. The victim&amp;rsquo;s ip LAN is 172.16.6.7&amp;quot;&lt;/p></description></item><item><title>使用 Git 上传文件至 Github</title><link>https://blog.yexca.net/archives/53/</link><pubDate>Wed, 03 Aug 2022 12:49:27 +0800</pubDate><guid>https://blog.yexca.net/archives/53/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.icu/2022/08/03/0b5e2db181ab/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.icu/2022/08/03/0b5e2db181ab/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>最近经常要使用Github保存我学习过程中的代码，发现无法直接上传文件夹，遂在网上查了一下使用Git上传，所以写个博文记录一下&lt;/p></description></item><item><title>命令行下载 YouTube 视频</title><link>https://blog.yexca.net/archives/52/</link><pubDate>Mon, 25 Jul 2022 12:52:27 +0800</pubDate><guid>https://blog.yexca.net/archives/52/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>哪个男孩不想使用命令行运行一些东西装逼呢。之前有所了解 youtube-dl，但看着过于复杂没去使用，今日尝试使用发现甚是好用啊！&lt;/p>
&lt;h2 id="环境">环境
&lt;/h2>&lt;h3 id="安装-python37">安装 Python3.7+
&lt;/h3>&lt;p>直接到
&lt;a class="link" href="https://www.python.org/downloads/"
target="_blank" rel="noopener"
>
Python 官网
&lt;/a>
下载安装即可，安装时勾选&lt;code>Add Python x.x to PATH&lt;/code>&lt;/p></description></item><item><title>VS Code 更换字体</title><link>https://blog.yexca.net/archives/51/</link><pubDate>Wed, 13 Jul 2022 17:47:57 +0800</pubDate><guid>https://blog.yexca.net/archives/51/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>近日网上冲浪时发现一觉得还不错的字体，便寻找更换字体方法。&lt;del>但实际使用下来没那么惊艳&lt;/del>&lt;/p>
&lt;h2 id="方式一">方式一
&lt;/h2>&lt;p>左下&lt;code>管理&lt;/code>-&lt;code>设置&lt;/code>(或者快捷键&lt;code>CTRL+,&lt;/code>)进入设置界面，找到&lt;code>Editor:Font Family&lt;/code>&lt;/p></description></item><item><title>Windows 网络地址( FTP 地址)取消快速访问</title><link>https://blog.yexca.net/archives/50/</link><pubDate>Mon, 27 Jun 2022 13:31:58 +0800</pubDate><guid>https://blog.yexca.net/archives/50/</guid><description>&lt;p>好像并没有解决方法，不过可以把快速访问中自己添加的全删除 (恢复默认)&lt;/p>
&lt;p>定位至 &lt;code>C:\\Users\\用户名\\AppData\\Roaming\\Microsoft\\Windows\\Recent\\AutomaticDestinations&lt;/code>，将此文件夹目录下的文件进行备份后全部删除&lt;/p></description></item><item><title>OpenWRT中继WIFI</title><link>https://blog.yexca.net/archives/49/</link><pubDate>Thu, 23 Jun 2022 14:50:21 +0800</pubDate><guid>https://blog.yexca.net/archives/49/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>今日尝试了一下之前试过的无线中继，发现已经不会了，果然做一项东西还是要写个文章记录一下比较好啊&lt;/p>
&lt;p>本文中，将OpenWRT路由器连接的WIFI称为上级路由，OpenWRT路由器称为路由器&lt;/p></description></item><item><title>使用 PS 自动化脚本批量处理图片</title><link>https://blog.yexca.net/archives/48/</link><pubDate>Fri, 10 Jun 2022 00:54:44 +0800</pubDate><guid>https://blog.yexca.net/archives/48/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.icu/2022/08/18/5be9517606f2/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.icu/2022/08/18/5be9517606f2/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;h2 id="使用ps自动化脚本批量处理图片">使用PS自动化脚本批量处理图片
&lt;/h2>&lt;ol>
&lt;li>点击菜单栏的 窗口-&amp;gt;动作 (快捷键 alt+F9)&lt;/li>
&lt;li>再选项卡底部点击新建文件夹（新建组），取名为修改图片大小（可以自己重命名）&lt;/li>
&lt;li>再点击旁边的创建新动作，我们可以看到底部原点变为红色&lt;br>
&lt;img src="https://raw.githubusercontent.com/hiyoung3937/img_hiyoung/master/bolg/blog_%E4%BD%BF%E7%94%A8PS%E8%87%AA%E5%8A%A8%E5%8C%96%E8%84%9A%E6%9C%AC%E6%89%B9%E9%87%8F%E5%A4%84%E7%90%86%E5%9B%BE%E7%89%87_1.5x0zewo4yzc0.jpg"
loading="lazy"
alt="blog_使用PS自动化脚本批量处理图片_1"
>&lt;/li>
&lt;li>&lt;strong>点击文件、打开&lt;/strong>，打开我们要处理的其中一张图片，修改图片大小，再点击确定，&lt;strong>然后另存为，取个名字，存储&lt;/strong>。（不要使用导出，否则无法录入动作导致陷入死循环）&lt;/li>
&lt;li>&lt;strong>点击文件、自动、批处理&lt;/strong>&lt;/li>
&lt;li>设置
&lt;ol>
&lt;li>播放处选择组和动作&lt;/li>
&lt;li>源 选择需要修改的图片文件地址&lt;/li>
&lt;li>目标 选择修改后的图片保存地址&lt;/li>
&lt;li>勾选 &lt;strong>“覆盖动作中的’打开’命令”&lt;/strong> 和 &lt;strong>“覆盖动作中的‘存储为’命令”&lt;/strong>&lt;br>
&lt;img src="https://raw.githubusercontent.com/hiyoung3937/img_hiyoung/master/bolg/blog_%E4%BD%BF%E7%94%A8PS%E8%87%AA%E5%8A%A8%E5%8C%96%E8%84%9A%E6%9C%AC%E6%89%B9%E9%87%8F%E5%A4%84%E7%90%86%E5%9B%BE%E7%89%87_2.2bh4ygmfs3i8.jpg"
loading="lazy"
alt="blog_使用PS自动化脚本批量处理图片_2"
>&lt;/li>
&lt;/ol>
&lt;/li>
&lt;/ol>
&lt;hr>
&lt;p>内容部分参考自互联网&lt;/p></description></item><item><title>原神自动签到 (Linux 服务器 Docker)</title><link>https://blog.yexca.net/archives/47/</link><pubDate>Thu, 09 Jun 2022 13:33:42 +0800</pubDate><guid>https://blog.yexca.net/archives/47/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>由于腾讯云函数从六月开始收费，于是便弃用改在自己的服务器上搭建&lt;/p>
&lt;p>既然六月收费为什么现在才写文章呢？因为&lt;del>可能还有三个月的免费试用&lt;/del>我米游社的 Cookie 过期更换，故记录&lt;/p></description></item><item><title>VS Code 实时预览 Markdown</title><link>https://blog.yexca.net/archives/46/</link><pubDate>Thu, 09 Jun 2022 00:03:34 +0800</pubDate><guid>https://blog.yexca.net/archives/46/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>在学习
&lt;a class="link" href="https://yexca.xyz/index.php/2022/05/28/markdown%e7%ae%80%e6%98%93%e5%85%a5%e9%97%a8%e5%ad%a6%e4%b9%a0%e7%ac%94%e8%ae%b0/"
target="_blank" rel="noopener"
>
Markdown 用法
&lt;/a>
后，感觉非常好用 (&lt;del>最近的文章都是使用 Markdown 写的&lt;/del>)，又因为编程或
&lt;a class="link" href="https://yexca.xyz/index.php/2022/05/28/github-pages%e5%bb%ba%e7%ab%99%e5%8f%8a%e8%87%aa%e5%ae%9a%e4%b9%89%e5%9f%9f%e5%90%8d/"
target="_blank" rel="noopener"
>
Github 建站
&lt;/a>
会和 Markdown 打交道，而我编程使用 VS Code (&lt;del>看嘉然&lt;/del>)，遂寻找是否可以实时预览&lt;/p></description></item><item><title>VS Code 右下角嘉然</title><link>https://blog.yexca.net/archives/45/</link><pubDate>Wed, 01 Jun 2022 06:01:00 +0800</pubDate><guid>https://blog.yexca.net/archives/45/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>首先我不是嘉心糖，我只是觉得很可爱 (&lt;del>我刚开始甚至都不知道是嘉然&lt;/del>)，然后这个 Bug 挺多，自启动不是每次都能触发，但她太可爱啦&lt;/p>
&lt;p>然后这个拓展还可以改背景，但我个人不是太喜欢就没改&lt;/p></description></item><item><title>Github Pages 建站及自定义域名</title><link>https://blog.yexca.net/archives/44/</link><pubDate>Sat, 28 May 2022 15:30:43 +0800</pubDate><guid>https://blog.yexca.net/archives/44/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最近基于 Github Pages 整了一个个人页面 (已经没了)，记录一下如何使用 Github Pages 建站以及自定义域名&lt;/p>
&lt;p>本文没有建站系统等，&lt;del>因为我也就写了一个 Markdown 文件&lt;/del>&lt;/p>
&lt;h2 id="创建github仓库">创建Github仓库
&lt;/h2>&lt;p>首先需要注册一个
&lt;a class="link" href="https://github.com"
target="_blank" rel="noopener"
>
Github
&lt;/a>
账号，登录后
&lt;a class="link" href="https://github.com/new"
target="_blank" rel="noopener"
>
创建一个新仓库
&lt;/a>
&lt;/p></description></item><item><title>Markdown 简述 (学习笔记)</title><link>https://blog.yexca.net/archives/43/</link><pubDate>Sat, 28 May 2022 00:59:23 +0800</pubDate><guid>https://blog.yexca.net/archives/43/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>最近因建
&lt;a class="link" href="https://pan.vrchat.yexca.xyz/"
target="_blank" rel="noopener"
>
网盘网站
&lt;/a>
了解了一下 Markdown，发现这玩意非常好用，于是写一份学习笔记&lt;/p>
&lt;p>可以通过
&lt;a class="link" href="https://markdown.com.cn/editor/"
target="_blank" rel="noopener"
>
在线编辑器
&lt;/a>
边看边学，也可下载一些
&lt;a class="link" href="https://markdown.com.cn/tools.html"
target="_blank" rel="noopener"
>
编辑器
&lt;/a>
&lt;/p>
&lt;p>个人编写 Markdown 的工具为
&lt;a class="link" href="https://www.typora.io/"
target="_blank" rel="noopener"
>
Typora
&lt;/a>
&lt;/p></description></item><item><title>プロセカ的IP规则</title><link>https://blog.yexca.net/archives/42/</link><pubDate>Thu, 19 May 2022 15:01:25 +0800</pubDate><guid>https://blog.yexca.net/archives/42/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>本人可直连进入游戏，但加速器等不可进入游戏，又因每次进入游戏关闭虚拟私人网路较为麻烦，寻找相应资料却无果，故写此文。(游戏为IOS日服)&lt;/p>
&lt;h2 id="正文">正文
&lt;/h2>&lt;p>通过查看日志文件确定了进入游戏时连接的域名&lt;/p></description></item><item><title>Linux 添加用户和管理员用户</title><link>https://blog.yexca.net/archives/41/</link><pubDate>Mon, 16 May 2022 15:29:21 +0800</pubDate><guid>https://blog.yexca.net/archives/41/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.xyz/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;h2 id="添加管理员用户">&lt;strong>添加管理员用户：&lt;/strong>
&lt;/h2>&lt;p>&lt;strong>1、新建用户，这里新建一个temp_test的用户&lt;/strong>&lt;/p>
&lt;div class="wp-block-group is-layout-flow">&lt;div class="wp-block-group__inner-container">adduser temp\_test
&lt;/div>&lt;/div>**2、设置新用户密码**
&lt;p>passwd temp_test&lt;/p>
&lt;p>&lt;strong>3、将sudoers文件的权限修改成可编辑&lt;/strong>&lt;/p></description></item><item><title>Liunx 随手笔记</title><link>https://blog.yexca.net/archives/40/</link><pubDate>Sat, 30 Apr 2022 04:24:07 +0800</pubDate><guid>https://blog.yexca.net/archives/40/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;ul>
&lt;li>Linux不会自动创建不存在的文件夹,使用”mv”命令时需要注意文件夹是否存在,否则会将文件重命名。&lt;/li>
&lt;li>为文件创建硬链接实际上是为文件创建了额外的名字部分(数据部分未改动),类似于C语言中创建了一个指针指向该文件。&lt;/li>
&lt;li>为文件创建符号链接类似于WIN中的快捷方式,在使用”ls -li”命令中可以比较直观的看出区别。硬链接字节数和源文件一样，而符号链接字节数不同。&lt;/li>
&lt;/ul>
&lt;p>&lt;img src="https://cdn.jsdelivr.net/gh/hiyoung3937/img_hiyoung@master/bolg/Liunx%e9%9a%8f%e6%89%8b%e7%ac%94%e8%ae%b0_1.5y3s10ifdko0.jpg"
loading="lazy"
alt="img"
>&lt;/p></description></item><item><title>在虚拟机中设置静态 IP（centos 为例）</title><link>https://blog.yexca.net/archives/39/</link><pubDate>Fri, 22 Apr 2022 18:13:42 +0800</pubDate><guid>https://blog.yexca.net/archives/39/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.xyz/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.xyz/2022/09/03/3256bd2afccc/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.xyz/2022/09/03/3256bd2afccc/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;h2 id="一虚拟机设置">一、虚拟机设置
&lt;/h2>&lt;p>在菜单栏选择编辑→ 虚拟网络编辑器，打开虚拟网络编辑器对话框，选择Net网络连接方式，随意设置子网IP，点击NAT设置页面，查看子网掩码和网关，后面修改静态IP会用到。&lt;/p></description></item><item><title>系统学习 Linux 笔记</title><link>https://blog.yexca.net/archives/38/</link><pubDate>Tue, 19 Apr 2022 02:53:27 +0800</pubDate><guid>https://blog.yexca.net/archives/38/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.xyz/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.xyz/2022/08/01/84a03702e5a9/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.xyz/2022/08/01/84a03702e5a9/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>（参考视频：
&lt;a class="link" href="https://www.bilibili.com/video/BV1WY4y1H7d3?p=1"
target="_blank" rel="noopener"
>
https://www.bilibili.com/video/BV1WY4y1H7d3?p=1
&lt;/a>
）&lt;/p>
&lt;h2 id="一基础篇">一、基础篇
&lt;/h2>&lt;h3 id="11-linux文件系统目录结构">1.1 Linux文件系统目录结构
&lt;/h3>&lt;p>&lt;img src="https://www.runoob.com/wp-content/uploads/2014/06/d0c50-linux2bfile2bsystem2bhierarchy.jpg"
loading="lazy"
alt="Linux文件系统目录结构"
>
&lt;a class="link" href="https://www.runoob.com/linux/linux-system-contents.html"
target="_blank" rel="noopener"
>
来源：菜鸟教程
&lt;/a>
&lt;/p>
&lt;p>图中小箭头表示该文件实际位置在别处&lt;/p>
&lt;ul>
&lt;li>&lt;strong>/bin：&lt;/strong>
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。&lt;/li>
&lt;li>&lt;strong>/boot：&lt;/strong>&lt;br>
这里存放的是启动 Linux 时使用的一些核心文件，包括一些连接文件以及镜像文件。&lt;/li>
&lt;li>&lt;strong>/dev ：&lt;/strong>&lt;br>
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备，在 Linux 中访问设备的方式和访问文件的方式是相同的。&lt;/li>
&lt;li>&lt;strong>/etc：&lt;/strong>&lt;br>
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。&lt;/li>
&lt;li>&lt;strong>/home&lt;/strong>：&lt;br>
用户的主目录，在 Linux 中，每个用户都有一个自己的目录，一般该目录名是以用户的账号命名的，如上图中的 alice、bob 和 eve。&lt;/li>
&lt;li>&lt;strong>/lib&lt;/strong>：&lt;br>
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库，其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。&lt;/li>
&lt;li>&lt;strong>/lost+found&lt;/strong>：&lt;br>
这个目录一般情况下是空的，当系统非法关机后，这里就存放了一些文件。&lt;/li>
&lt;li>&lt;strong>/media&lt;/strong>：&lt;br>
linux 系统会自动识别一些设备，例如U盘、光驱等等，当识别后，Linux 会把识别的设备挂载到这个目录下。&lt;/li>
&lt;li>&lt;strong>/mnt&lt;/strong>：&lt;br>
系统提供该目录是为了让用户临时挂载别的文件系统的，我们可以将光驱挂载在 /mnt/ 上，然后进入该目录就可以查看光驱里的内容了。&lt;/li>
&lt;li>&lt;strong>/opt&lt;/strong>：&lt;br>
opt 是 optional(可选) 的缩写，这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。&lt;/li>
&lt;li>&lt;strong>/proc&lt;/strong>：&lt;br>
proc 是 Processes(进程) 的缩写，/proc 是一种伪文件系统（也即虚拟文件系统），存储的是当前内核运行状态的一系列特殊文件，这个目录是一个虚拟的目录，它是系统内存的映射，我们可以通过直接访问这个目录来获取系统信息。&lt;br>
这个目录的内容不在硬盘上而是在内存里，我们也可以直接修改里面的某些文件，比如可以通过下面的命令来屏蔽主机的ping命令，使别人无法ping你的机器：echo 1 &amp;gt; /proc/sys/net/ipv4/icmp_echo_ignore_all&lt;/li>
&lt;li>&lt;strong>/root&lt;/strong>：&lt;br>
该目录为系统管理员，也称作超级权限者的用户主目录。&lt;/li>
&lt;li>&lt;strong>/sbin&lt;/strong>：&lt;br>
s 就是 Super User 的意思，是 Superuser Binaries (超级用户的二进制文件) 的缩写，这里存放的是系统管理员使用的系统管理程序。&lt;/li>
&lt;li>&lt;strong>/selinux&lt;/strong>：&lt;br>
这个目录是 Redhat/CentOS 所特有的目录，Selinux 是一个安全机制，类似于 windows 的防火墙，但是这套机制比较复杂，这个目录就是存放selinux相关的文件的。&lt;/li>
&lt;li>&lt;strong>/srv&lt;/strong>：&lt;br>
该目录存放一些服务启动之后需要提取的数据。&lt;/li>
&lt;li>&lt;strong>/sys&lt;/strong>：这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。sysfs 文件系统集成了下面3种文件系统的信息：针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候，对应的文件和目录也在内核对象子系统中被创建。&lt;/li>
&lt;li>&lt;strong>/tmp&lt;/strong>：&lt;br>
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。&lt;/li>
&lt;li>&lt;strong>/usr&lt;/strong>：&lt;br>
usr 是 unix shared resources(共享资源) 的缩写，这是一个非常重要的目录，用户的很多应用程序和文件都放在这个目录下，类似于 windows 下的 program files 目录。&lt;/li>
&lt;li>&lt;strong>/usr/bin：&lt;/strong>&lt;br>
系统用户使用的应用程序。&lt;/li>
&lt;li>&lt;strong>/usr/sbin：&lt;/strong>&lt;br>
超级用户使用的比较高级的管理程序和系统守护程序。&lt;/li>
&lt;li>&lt;strong>/usr/src：&lt;/strong>&lt;br>
内核源代码默认的放置目录。&lt;/li>
&lt;li>&lt;strong>/var&lt;/strong>：&lt;br>
var 是 variable(变量) 的缩写，这个目录中存放着在不断扩充着的东西，我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。&lt;/li>
&lt;li>&lt;strong>/run&lt;/strong>：&lt;br>
是一个临时文件系统，存储系统启动以来的信息。当系统重启时，这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录，应该让它指向 run。&lt;/li>
&lt;/ul>
&lt;h3 id="12-文件基本属性">1.2 文件基本属性
&lt;/h3>&lt;h4 id="121-基本属性">1.2.1 基本属性
&lt;/h4>&lt;p>在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。&lt;/p></description></item><item><title>免启动 steam 打开 OBS</title><link>https://blog.yexca.net/archives/37/</link><pubDate>Mon, 11 Apr 2022 22:19:48 +0800</pubDate><guid>https://blog.yexca.net/archives/37/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>2022 年 03 月 22 日，OBS 上架 Steam，方便了更新，但每次使用都要打开 Steam 着实有点麻烦。&lt;/p>
&lt;h2 id="正文">正文
&lt;/h2>&lt;p>Steam 库界面右击 &lt;code>OBS Studio&lt;/code> ，依次选择 &lt;code>管理-浏览本地文件&lt;/code>&lt;/p>
&lt;p>在文件资源管理器内进入路径 &lt;code>bin/64bit&lt;/code> 或 &lt;code>bin/32bit&lt;/code>，找到 &lt;code>obs64&lt;/code> 或 &lt;code>obs32&lt;/code>&lt;/p></description></item><item><title>查询B站注册时间(精确到秒)</title><link>https://blog.yexca.net/archives/36/</link><pubDate>Sat, 09 Apr 2022 13:47:52 +0800</pubDate><guid>https://blog.yexca.net/archives/36/</guid><description>&lt;h2 id="一查询时间戳">一、查询时间戳
&lt;/h2>&lt;p>打开网页
&lt;a class="link" href="https://member.bilibili.com/x2/creative/h5/calendar/event?ts=0"
target="_blank" rel="noopener"
>
https://member.bilibili.com/x2/creative/h5/calendar/event?ts=0
&lt;/a>
&lt;br>
按下 &lt;code>CTRL+F&lt;/code>，输入 &lt;code>jointime&lt;/code>，找到 jointime 后面的数字即为时间戳&lt;/p>
&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2022/04-B%e7%ab%99%e6%b3%a8%e5%86%8c%e6%97%b6%e9%97%b4/jointime.2nnsmeqoq2a0.webp"
loading="lazy"
alt="img"
>&lt;/p>
&lt;p>将时间戳复制&lt;/p>
&lt;h2 id="二转换时间戳">二、转换时间戳
&lt;/h2>&lt;p>打开网站
&lt;a class="link" href="https://tool.lu/timestamp/"
target="_blank" rel="noopener"
>
时间戳 (Unix timestamp) 转换工具 – 在线工具
&lt;/a>
&lt;/p>
&lt;p>在相应位置输入时间戳点击转换即可&lt;/p></description></item><item><title>使用 PicX 图床上传图片提示 "Bad credentials"</title><link>https://blog.yexca.net/archives/35/</link><pubDate>Tue, 22 Mar 2022 16:30:12 +0800</pubDate><guid>https://blog.yexca.net/archives/35/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>今日我写文章时，发现 PicX 图床无法使用并提示 &lt;code>Bad credentials&lt;/code>，于是便寻找解决方法&lt;/p>
&lt;h2 id="结论">结论
&lt;/h2>&lt;p>其实就是 Github 的 Token 到期了，然后在邮箱里会收到一封邮件，名为 &lt;code>[GitHub] Your personal access token has expired&lt;/code>&lt;br>
邮件有三行，第二行 &lt;code>If this token is still needed&lt;/code>，后面有个链接，点击打开并重新创建即可&lt;/p></description></item><item><title>VRchat 在中文吧自动弹钢琴</title><link>https://blog.yexca.net/archives/34/</link><pubDate>Tue, 22 Mar 2022 16:11:47 +0800</pubDate><guid>https://blog.yexca.net/archives/34/</guid><description>&lt;blockquote>
&lt;p>另外我写了模型修改教程，可以访问:
&lt;a class="link" href="https://vrchat.yexca.net/"
target="_blank" rel="noopener"
>
https://vrchat.yexca.net/
&lt;/a>
查看&lt;/p>
&lt;/blockquote>
&lt;h2 id="引言">引言
&lt;/h2>&lt;p>近日通过好友告知 VRchat 中的钢琴可以自行弹奏，于是便学习了以下，写此篇文章以作记录。&lt;br>
注：好像只可以 PC 模式下自动弹奏，当然，您也可以在 VR 下投出桌面试试（doge&lt;/p></description></item><item><title>图床网站总结</title><link>https://blog.yexca.net/archives/33/</link><pubDate>Sun, 20 Mar 2022 16:54:36 +0800</pubDate><guid>https://blog.yexca.net/archives/33/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>本文章为我自行搜集的一些免费图床，部分图床曾经使用过。当然，如果您想要使用图床，我推荐您阅读
&lt;a class="link" href="https://blog.yexca.net/archives/27/"
>
使用 PicX 自建免费图床 – yexca’Blog
&lt;/a>
&lt;/p>
&lt;h2 id="一路过图床">一、路过图床
&lt;/h2>&lt;p>官网链接：
&lt;a class="link" href="https://imgtu.com/"
target="_blank" rel="noopener"
>
路过图床 – 免费图片上传, 专业图片外链, 免费公共图床
&lt;/a>
&lt;/p></description></item><item><title>Windows 电脑截屏和录屏</title><link>https://blog.yexca.net/archives/32/</link><pubDate>Sat, 19 Mar 2022 13:57:39 +0800</pubDate><guid>https://blog.yexca.net/archives/32/</guid><description>&lt;h2 id="前言">前言
&lt;/h2>&lt;p>此文章所写方法仅一般用途，如有特殊需求请自行查阅&lt;/p>
&lt;h2 id="一使用-win10win11-自带">一、使用 Win10/Win11 自带
&lt;/h2>&lt;h3 id="1系统自带截屏软件">1）系统自带截屏软件
&lt;/h3>&lt;p>Win10/Win11 自带一个截屏软件，名称为 “截图工具”，有两种形式使用&lt;/p>
&lt;h4 id="1-打开软件使用">&amp;lt;1&amp;gt; 打开软件使用
&lt;/h4>&lt;p>通过按下 &lt;code>Win&lt;/code> 按键，打开所有应用，找到 “截图工具”打开&lt;/p></description></item><item><title>Beat Saber 添加自定义歌单</title><link>https://blog.yexca.net/archives/31/</link><pubDate>Fri, 18 Mar 2022 17:46:00 +0800</pubDate><guid>https://blog.yexca.net/archives/31/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>近期入正了Beat Saber(虽然是阿区)，于是便想着去添加自定义歌曲，通过steam的评论区得知
&lt;a class="link" href="https://bs.wgzeyu.com/"
target="_blank" rel="noopener"
>
WGzeyu
&lt;/a>
大佬做了相关教程，但由于本人目的简单，而教程比较全，特写此文章进行总结&lt;/p></description></item><item><title>使用 Quest2 VR 玩恋爱活动 (恋活 / koikatu) 遇到的问题及解决</title><link>https://blog.yexca.net/archives/30/</link><pubDate>Fri, 18 Mar 2022 16:54:23 +0800</pubDate><guid>https://blog.yexca.net/archives/30/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>在玩了 Beat Saber 和 VRchat 等 VR 游戏后突然想到 i 社有部分游戏支持 VR，本人最喜欢玩恋活，于是试着进行游玩，但却遇到相关问题，本文仅作记录。另 VR 版无剧情，且本人使用原版所以遇到问题较少。&lt;/p></description></item><item><title>《图解HTTP》读后总结及浅谈</title><link>https://blog.yexca.net/archives/29/</link><pubDate>Wed, 16 Mar 2022 23:56:48 +0800</pubDate><guid>https://blog.yexca.net/archives/29/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;h2 id="第一章了解web及网络基础">第一章：了解Web及网络基础
&lt;/h2>&lt;h3 id="11简介">1.1简介
&lt;/h3>&lt;p>为理解HTTP应事先了解一下TCP/IP协议族，我们通常使用的网络（包括互联网）是在TCP/IP协议族的基础上运作，而HTTP属于它内部的一个子集。在互联网上的设备需要相互通信双方就必须要遵从相同的规则，我们把这些规则称为协议。（TCP/IP是对互联网相关的各类协议族的一个总称包括但不限于：PPPoE、HTTP、TCP、IP、UDP、IEEE 802.3…）&lt;/p></description></item><item><title>将 MMD 模型导入 Unity</title><link>https://blog.yexca.net/archives/28/</link><pubDate>Thu, 10 Mar 2022 13:15:26 +0800</pubDate><guid>https://blog.yexca.net/archives/28/</guid><description>&lt;h2 id="注意">注意
&lt;/h2>&lt;p>此文章复制自
&lt;a class="link" href="https://blog.nowcoder.net/n/6edf811b327945fd8143e14a34b0e2f2"
target="_blank" rel="noopener"
>
《unity学习笔记》——将MMD模型导入unity
&lt;/a>
，仅用于个人记录使用，部分内容有修改&lt;/p>
&lt;hr>
&lt;h2 id="方法1利用unity插件直接读取fbx模型">方法1：利用unity插件直接读取fbx模型
&lt;/h2>&lt;h3 id="第一步安装插件-mmd4mecanim-beta">第一步：安装插件 MMD4Mecanim (Beta)
&lt;/h3>&lt;p>插件地址：
&lt;a class="link" href="http://stereoarts.jp/"
target="_blank" rel="noopener"
>
Stereoarts Homepage
&lt;/a>
（应插件作者要求请勿上传至GitHub）&lt;br>
文件直链：
&lt;a class="link" href="http://stereoarts.jp/MMD4Mecanim_Beta_20200105.zip"
target="_blank" rel="noopener"
>
MMD4Mecanim_Beta_20200105.zip
&lt;/a>
&lt;/p></description></item><item><title>使用 PicX 自建免费图床</title><link>https://blog.yexca.net/archives/27/</link><pubDate>Thu, 17 Feb 2022 23:02:13 +0800</pubDate><guid>https://blog.yexca.net/archives/27/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>在日常发文章时经常会需要插入图片（虽然我最近文章都没图片），但是如果使用自己服务器比较耗流量并且加载速度不是特别快，这就需要使用图床了，但是多数免费图床会有时不时图没了，速度慢等之类的问题，于是开始探索自建图床。&lt;/p></description></item><item><title>将课程表导入日历（树维教务）</title><link>https://blog.yexca.net/archives/26/</link><pubDate>Wed, 16 Feb 2022 17:53:16 +0800</pubDate><guid>https://blog.yexca.net/archives/26/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>由于学校的教务系统查看课程表不是那么便捷，而且第三方课程表有一定的安全隐患并且广告奇多，于是便想着把课程表导入日历，我选择导入 Outlook 日历，这样可以实现 iOS，Windows 和 Android 多端同步。&lt;/p></description></item><item><title>查看服务器端口是否开放</title><link>https://blog.yexca.net/archives/25/</link><pubDate>Sun, 13 Feb 2022 19:46:38 +0800</pubDate><guid>https://blog.yexca.net/archives/25/</guid><description>&lt;h2 id="国内工具">国内工具
&lt;/h2>&lt;p>使用站长工具的端口扫描，输入IP地址或域名和端口后点击开始扫描&lt;/p>
&lt;p>如果显示关闭，则端口未开放或无法连接&lt;/p>
&lt;p>工具链接：
&lt;a class="link" href="http://tool.chinaz.com/port/"
target="_blank" rel="noopener"
>
端口扫描 – 站长工具
&lt;/a>
&lt;/p>
&lt;h2 id="国外工具">国外工具
&lt;/h2>&lt;p>使用 you get signal 的 Port Forwarding Tester 进行扫描&lt;/p></description></item><item><title>使用 VS Code 收发 QQ 消息</title><link>https://blog.yexca.net/archives/24/</link><pubDate>Fri, 11 Feb 2022 21:47:56 +0800</pubDate><guid>https://blog.yexca.net/archives/24/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>由于 QQ 软件过于臃肿并且权限过大，并且经常性卡住无法加载，所以便寻找其他方法，首先是通过 Telegram 收发 QQ 消息，但配置较为复杂且并不稳定，于是弃用并改用 VS Code&lt;/p></description></item><item><title>去除 Potplayer 右下弹窗</title><link>https://blog.yexca.net/archives/23/</link><pubDate>Sun, 06 Feb 2022 21:37:45 +0800</pubDate><guid>https://blog.yexca.net/archives/23/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>Potplayer 是非常优秀的视频播放软件，但最近的版本右下开始有弹窗广告非常的让人困扰，本文讲述两种方法解决右下弹窗&lt;/p>
&lt;h2 id="使用无弹窗的旧版本推荐">使用无弹窗的旧版本（推荐）
&lt;/h2>&lt;p>最后一个无广告弹窗的版本是1.7.18958&lt;/p></description></item><item><title>FIR300M 路由器刷固件 OpenWRT</title><link>https://blog.yexca.net/archives/22/</link><pubDate>Sun, 06 Feb 2022 20:44:10 +0800</pubDate><guid>https://blog.yexca.net/archives/22/</guid><description>&lt;h2 id="引言-废话">引言 (废话)
&lt;/h2>&lt;p>闲来无事，于是便想要折腾一下路由器当网关（但事后发现这个路由器空间太小，安装不了多少插件，属实是白忙活了一下午）&lt;/p>
&lt;hr>
&lt;p>&lt;strong>2022.02.17 更新&lt;/strong>：不经意间发现了一个自带网关的 FIR300M 固件，但由于支持的 method 过于老旧，如需刷取，请注意辨别。&lt;/p></description></item><item><title>背景</title><link>https://blog.yexca.net/background/</link><pubDate>Mon, 31 Jan 2022 20:40:24 +0800</pubDate><guid>https://blog.yexca.net/background/</guid><description>&lt;h2 id="引言">引言
&lt;/h2>&lt;p>因本人技术力过低，本站多次崩溃并重装，此页面将从使用主题
&lt;a class="link" href="https://github.com/solstice23/argon-theme"
target="_blank" rel="noopener"
>
Argon
&lt;/a>
后使用的背景开始记录&lt;/p>
&lt;p>迁移到 Jekyll 后这个主题用背景图片有点麻烦，此帖终结了属于是&lt;/p>
&lt;p>emmm，虽然换了博客系统，但还是没应用场景捏&lt;/p></description></item><item><title>在 Microsoft Word 中插入代码（高亮）</title><link>https://blog.yexca.net/archives/21/</link><pubDate>Thu, 20 Jan 2022 14:28:52 +0800</pubDate><guid>https://blog.yexca.net/archives/21/</guid><description>&lt;h2 id="引言废话">引言(废话)
&lt;/h2>&lt;p>有些时候会有在Word文档中插入代码的需求，但是直接把代码拷贝过去会不大美观，而且没有高亮看着也非常难受&lt;/p>
&lt;h2 id="工具一">工具一
&lt;/h2>&lt;p>
&lt;a class="link" href="http://www.codeinword.com/"
target="_blank" rel="noopener"
>
CodeInWord 在word中优雅展现的代码/代码高亮/word中插入代码/代码格式化
&lt;/a>
&lt;/p></description></item><item><title>转区软件 Locale Emulator</title><link>https://blog.yexca.net/archives/20/</link><pubDate>Fri, 14 Jan 2022 15:53:40 +0800</pubDate><guid>https://blog.yexca.net/archives/20/</guid><description>&lt;h2 id="前言">前言
&lt;/h2>&lt;p>在游玩外区一些小游戏时，常常会由于乱码而不能游玩或者报错无法运行，此时需要转区以匹配正确文字&lt;/p>
&lt;p>虽然可以通过修改 Windows 的地区设置以运行，但很多时候此方法略显繁琐，并且需要重启电脑，游玩后如果不改回则可能导致正常软件无法使用，此时便需要相关转区软件&lt;/p></description></item><item><title>Linux 服务器（网络相关）</title><link>https://blog.yexca.net/archives/19/</link><pubDate>Fri, 14 Jan 2022 01:30:54 +0800</pubDate><guid>https://blog.yexca.net/archives/19/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.xyz/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;p>背景知识：&lt;/p>
&lt;p>linux时钟概述&lt;br>
linux系统有两个时钟：一个是硬件时钟，即BIOS时间；另一个是系统时钟，是linux系统Kernel（内核）时间。&lt;br>
在linux系统上程序运行时读取的时间都是系统Kernel（内核）时间。&lt;br>
每次Linux启动时，系统Kernel（内核）会先去读取硬件时钟的设置（但是此时的硬件时间不一定是准确的），然后系统时钟就会独立于硬件继续运作。&lt;br>
综上所述，所以想要永久修改linux时间并使得时间准确，就需要永久修改硬件时间，不然每次重新启动linux时，系统时间又变回之前的硬件时间。&lt;br>
linux时钟相关命令&lt;br>
系统Kernel（内核）时钟的相关命令是timedatectl 或者 date；&lt;br>
硬件BIOS时钟相关命令是hwclock 或者 clock。&lt;/p></description></item><item><title>使用 xshell 连接虚拟机的 centos7 系统</title><link>https://blog.yexca.net/archives/18/</link><pubDate>Sun, 26 Dec 2021 15:34:59 +0800</pubDate><guid>https://blog.yexca.net/archives/18/</guid><description>&lt;p>注意：此方法为临时连接，虚拟机重启或关机需要重新配置&lt;/p>
&lt;h2 id="虚拟机网络适配器设置">虚拟机网络适配器设置
&lt;/h2>&lt;p>虚拟机的网络适配器一共有三个设置&lt;/p>
&lt;ul>
&lt;li>桥接模式：指使用本机网络网段&lt;/li>
&lt;li>NAT模式：使用VMware Network Adapter VMnet8的网段&lt;/li>
&lt;li>Host-only(仅主机模式)：使用VMware Network Adapter VMnet1的网段&lt;/li>
&lt;/ul>
&lt;h2 id="查看ip网段">查看IP网段
&lt;/h2>&lt;p>打开VMware中左上“编辑-虚拟网络编辑器”即可看到VMnet1和VMnet8对应网段地址(子网地址)&lt;/p></description></item><item><title>数据结构 栈代码</title><link>https://blog.yexca.net/archives/17/</link><pubDate>Sun, 21 Nov 2021 22:19:04 +0800</pubDate><guid>https://blog.yexca.net/archives/17/</guid><description>&lt;h2 id="顺序栈-数组实现">顺序栈 (数组实现)
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;span class="lnt">39
&lt;/span>&lt;span class="lnt">40
&lt;/span>&lt;span class="lnt">41
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c" data-lang="c">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;stdio.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 元素 elem 进栈，a 为数组，top 值为当前栈的栈顶位置
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span>&lt;span class="o">*&lt;/span> &lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">a&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="p">]&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">elem&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 数据元素出栈
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="o">==-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;空栈&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;弹栈元素：%d&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="p">]);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span>&lt;span class="o">--&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">void&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">a&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="mi">100&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="o">=-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">3&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">4&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">top&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>输出结果：&lt;/p></description></item><item><title>数据结构 顺序表代码</title><link>https://blog.yexca.net/archives/16/</link><pubDate>Sat, 20 Nov 2021 23:01:47 +0800</pubDate><guid>https://blog.yexca.net/archives/16/</guid><description>&lt;h2 id="代码">代码
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt"> 10
&lt;/span>&lt;span class="lnt"> 11
&lt;/span>&lt;span class="lnt"> 12
&lt;/span>&lt;span class="lnt"> 13
&lt;/span>&lt;span class="lnt"> 14
&lt;/span>&lt;span class="lnt"> 15
&lt;/span>&lt;span class="lnt"> 16
&lt;/span>&lt;span class="lnt"> 17
&lt;/span>&lt;span class="lnt"> 18
&lt;/span>&lt;span class="lnt"> 19
&lt;/span>&lt;span class="lnt"> 20
&lt;/span>&lt;span class="lnt"> 21
&lt;/span>&lt;span class="lnt"> 22
&lt;/span>&lt;span class="lnt"> 23
&lt;/span>&lt;span class="lnt"> 24
&lt;/span>&lt;span class="lnt"> 25
&lt;/span>&lt;span class="lnt"> 26
&lt;/span>&lt;span class="lnt"> 27
&lt;/span>&lt;span class="lnt"> 28
&lt;/span>&lt;span class="lnt"> 29
&lt;/span>&lt;span class="lnt"> 30
&lt;/span>&lt;span class="lnt"> 31
&lt;/span>&lt;span class="lnt"> 32
&lt;/span>&lt;span class="lnt"> 33
&lt;/span>&lt;span class="lnt"> 34
&lt;/span>&lt;span class="lnt"> 35
&lt;/span>&lt;span class="lnt"> 36
&lt;/span>&lt;span class="lnt"> 37
&lt;/span>&lt;span class="lnt"> 38
&lt;/span>&lt;span class="lnt"> 39
&lt;/span>&lt;span class="lnt"> 40
&lt;/span>&lt;span class="lnt"> 41
&lt;/span>&lt;span class="lnt"> 42
&lt;/span>&lt;span class="lnt"> 43
&lt;/span>&lt;span class="lnt"> 44
&lt;/span>&lt;span class="lnt"> 45
&lt;/span>&lt;span class="lnt"> 46
&lt;/span>&lt;span class="lnt"> 47
&lt;/span>&lt;span class="lnt"> 48
&lt;/span>&lt;span class="lnt"> 49
&lt;/span>&lt;span class="lnt"> 50
&lt;/span>&lt;span class="lnt"> 51
&lt;/span>&lt;span class="lnt"> 52
&lt;/span>&lt;span class="lnt"> 53
&lt;/span>&lt;span class="lnt"> 54
&lt;/span>&lt;span class="lnt"> 55
&lt;/span>&lt;span class="lnt"> 56
&lt;/span>&lt;span class="lnt"> 57
&lt;/span>&lt;span class="lnt"> 58
&lt;/span>&lt;span class="lnt"> 59
&lt;/span>&lt;span class="lnt"> 60
&lt;/span>&lt;span class="lnt"> 61
&lt;/span>&lt;span class="lnt"> 62
&lt;/span>&lt;span class="lnt"> 63
&lt;/span>&lt;span class="lnt"> 64
&lt;/span>&lt;span class="lnt"> 65
&lt;/span>&lt;span class="lnt"> 66
&lt;/span>&lt;span class="lnt"> 67
&lt;/span>&lt;span class="lnt"> 68
&lt;/span>&lt;span class="lnt"> 69
&lt;/span>&lt;span class="lnt"> 70
&lt;/span>&lt;span class="lnt"> 71
&lt;/span>&lt;span class="lnt"> 72
&lt;/span>&lt;span class="lnt"> 73
&lt;/span>&lt;span class="lnt"> 74
&lt;/span>&lt;span class="lnt"> 75
&lt;/span>&lt;span class="lnt"> 76
&lt;/span>&lt;span class="lnt"> 77
&lt;/span>&lt;span class="lnt"> 78
&lt;/span>&lt;span class="lnt"> 79
&lt;/span>&lt;span class="lnt"> 80
&lt;/span>&lt;span class="lnt"> 81
&lt;/span>&lt;span class="lnt"> 82
&lt;/span>&lt;span class="lnt"> 83
&lt;/span>&lt;span class="lnt"> 84
&lt;/span>&lt;span class="lnt"> 85
&lt;/span>&lt;span class="lnt"> 86
&lt;/span>&lt;span class="lnt"> 87
&lt;/span>&lt;span class="lnt"> 88
&lt;/span>&lt;span class="lnt"> 89
&lt;/span>&lt;span class="lnt"> 90
&lt;/span>&lt;span class="lnt"> 91
&lt;/span>&lt;span class="lnt"> 92
&lt;/span>&lt;span class="lnt"> 93
&lt;/span>&lt;span class="lnt"> 94
&lt;/span>&lt;span class="lnt"> 95
&lt;/span>&lt;span class="lnt"> 96
&lt;/span>&lt;span class="lnt"> 97
&lt;/span>&lt;span class="lnt"> 98
&lt;/span>&lt;span class="lnt"> 99
&lt;/span>&lt;span class="lnt">100
&lt;/span>&lt;span class="lnt">101
&lt;/span>&lt;span class="lnt">102
&lt;/span>&lt;span class="lnt">103
&lt;/span>&lt;span class="lnt">104
&lt;/span>&lt;span class="lnt">105
&lt;/span>&lt;span class="lnt">106
&lt;/span>&lt;span class="lnt">107
&lt;/span>&lt;span class="lnt">108
&lt;/span>&lt;span class="lnt">109
&lt;/span>&lt;span class="lnt">110
&lt;/span>&lt;span class="lnt">111
&lt;/span>&lt;span class="lnt">112
&lt;/span>&lt;span class="lnt">113
&lt;/span>&lt;span class="lnt">114
&lt;/span>&lt;span class="lnt">115
&lt;/span>&lt;span class="lnt">116
&lt;/span>&lt;span class="lnt">117
&lt;/span>&lt;span class="lnt">118
&lt;/span>&lt;span class="lnt">119
&lt;/span>&lt;span class="lnt">120
&lt;/span>&lt;span class="lnt">121
&lt;/span>&lt;span class="lnt">122
&lt;/span>&lt;span class="lnt">123
&lt;/span>&lt;span class="lnt">124
&lt;/span>&lt;span class="lnt">125
&lt;/span>&lt;span class="lnt">126
&lt;/span>&lt;span class="lnt">127
&lt;/span>&lt;span class="lnt">128
&lt;/span>&lt;span class="lnt">129
&lt;/span>&lt;span class="lnt">130
&lt;/span>&lt;span class="lnt">131
&lt;/span>&lt;span class="lnt">132
&lt;/span>&lt;span class="lnt">133
&lt;/span>&lt;span class="lnt">134
&lt;/span>&lt;span class="lnt">135
&lt;/span>&lt;span class="lnt">136
&lt;/span>&lt;span class="lnt">137
&lt;/span>&lt;span class="lnt">138
&lt;/span>&lt;span class="lnt">139
&lt;/span>&lt;span class="lnt">140
&lt;/span>&lt;span class="lnt">141
&lt;/span>&lt;span class="lnt">142
&lt;/span>&lt;span class="lnt">143
&lt;/span>&lt;span class="lnt">144
&lt;/span>&lt;span class="lnt">145
&lt;/span>&lt;span class="lnt">146
&lt;/span>&lt;span class="lnt">147
&lt;/span>&lt;span class="lnt">148
&lt;/span>&lt;span class="lnt">149
&lt;/span>&lt;span class="lnt">150
&lt;/span>&lt;span class="lnt">151
&lt;/span>&lt;span class="lnt">152
&lt;/span>&lt;span class="lnt">153
&lt;/span>&lt;span class="lnt">154
&lt;/span>&lt;span class="lnt">155
&lt;/span>&lt;span class="lnt">156
&lt;/span>&lt;span class="lnt">157
&lt;/span>&lt;span class="lnt">158
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c" data-lang="c">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;stdio.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;stdlib.h&amp;gt; // malloc()、exit()&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#define Size 5 &lt;/span>&lt;span class="c1">// 对 Size 进行宏定义，表示顺序表申请空间的大小
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">typedef&lt;/span> &lt;span class="k">struct&lt;/span> &lt;span class="n">Table&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="n">head&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 声明了一个名为head的长度不确定的数组，也叫“动态数组”
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">length&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 记录当前顺序表的长度
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 记录顺序表分配的存储容量
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="p">}&lt;/span>&lt;span class="n">table&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 初始化函数
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="nf">initTable&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">table&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="nf">malloc&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">Size&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="k">sizeof&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span>&lt;span class="p">));&lt;/span> &lt;span class="c1">// 构造一个空的顺序表，动态申请存储空间
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="o">!&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="c1">// 如果申请失败，作出提示并直接退出程序
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;初始化失败&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">exit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 空表的长度初始化为 0
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">Size&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 空表的初始存储空间为 Size
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 插入函数，其中，elem 为插入的元素，add 为插入到顺序表的位置
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="nf">addTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">add&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 判断插入本身是否存在问题（如果插入元素位置比整张表的长度 +1 还大 (如果相等，是尾随的情况)，或者插入的位置本身不存在，程序作为提示并自动退出)
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">add&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span> &lt;span class="o">||&lt;/span> &lt;span class="n">add&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;插入位置有问题&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 做插入操作时，首先需要看顺序表是否有多余的存储空间提供给插入的元素，如果没有，需要申请
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="nf">realloc&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">*&lt;/span> &lt;span class="k">sizeof&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">int&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="o">!&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;存储分配失败&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">size&lt;/span> &lt;span class="o">+=&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 插入操作，需要将从插入位置开始的后续元素，逐个后移
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="n">add&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">--&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 后移完成后，直接将所需插入元素，添加到顺序表的相应位置
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">add&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 由于添加了元素，所以长度 +1
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 删除函数
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="nf">delTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">add&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">add&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span> &lt;span class="o">||&lt;/span> &lt;span class="n">add&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;被删除元素的位置有误&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">exit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">add&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span>&lt;span class="o">--&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 查找函数，其中，elem 表示要查找的数据元素的值
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">selectTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 更改函数，其中，elem 为要更改的元素，newElem 为新的数据元素
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="nf">amendTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">newElem&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">add&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">selectTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">elem&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">add&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">newElem&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 输出顺序表中元素的函数
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">void&lt;/span> &lt;span class="nf">displayTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">table&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;%d &amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">t&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span>&lt;span class="p">]);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">add&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">table&lt;/span> &lt;span class="n">t1&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">initTable&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">// 向顺序表中添加元素
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">for&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span> &lt;span class="o">&amp;lt;=&lt;/span> &lt;span class="n">Size&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t1&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">i&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t1&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">length&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;原顺序表：&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">displayTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;删除元素1:&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t1&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">delTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">displayTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;在第2的位置插入元素5:&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t1&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">addTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">5&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">displayTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;查找元素3的位置:&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">add&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">selectTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">3&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;%d&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">add&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;将元素3改为6:&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">t1&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nf">amendTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">3&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">6&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">displayTable&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">t1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="结果">结果
&lt;/h2>&lt;p>程序运行结果为：&lt;/p></description></item><item><title>数据结构 链表代码</title><link>https://blog.yexca.net/archives/15/</link><pubDate>Wed, 17 Nov 2021 12:00:49 +0800</pubDate><guid>https://blog.yexca.net/archives/15/</guid><description>&lt;h2 id="简单链表">简单链表
&lt;/h2>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c" data-lang="c">&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#include&lt;/span> &lt;span class="cpf">&amp;lt;stdio.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">struct&lt;/span> &lt;span class="n">student&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">long&lt;/span> &lt;span class="n">num&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">float&lt;/span> &lt;span class="n">score&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">struct&lt;/span> &lt;span class="n">student&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">next&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">void&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">struct&lt;/span> &lt;span class="n">student&lt;/span> &lt;span class="n">a&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">c&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">head&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">p&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">a&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">num&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">99101&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">a&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">score&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mf">89.5&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">b&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">num&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">99103&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">score&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">90&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">c&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">num&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">99107&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">c&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">score&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="mi">85&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 对结点的 num 和 score 成员赋值
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">head&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 将结点 a 的起始地址赋给头指针 head
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">a&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">next&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 将结点 b 的起始地址赋给 a 结点的 next 成员
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">b&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">next&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">c&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">c&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">next&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">NULL&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// c 结点的 next 成员不存放其他结点地址
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">p&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">head&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">// 使 p 指针指向 a 结点
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">do&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;%ld %5.1f&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">p&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">num&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">p&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">score&lt;/span>&lt;span class="p">);&lt;/span> &lt;span class="c1">// 输出 p 指向的结点的数据
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="n">p&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">p&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">next&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="c1">//使 p 指向下一结点
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="p">}&lt;/span>&lt;span class="k">while&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">p&lt;/span> &lt;span class="o">!=&lt;/span> &lt;span class="nb">NULL&lt;/span>&lt;span class="p">);&lt;/span> &lt;span class="c1">//输出完 c 结点后 p 的值为 NULL
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">system&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;pause&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;h2 id="内存分配函数">内存分配函数
&lt;/h2>&lt;ul>
&lt;li>malloc 函数&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c" data-lang="c">&lt;span class="line">&lt;span class="cl">&lt;span class="kt">void&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="nf">malloc&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">unsigned&lt;/span> &lt;span class="kt">int&lt;/span> &lt;span class="n">size&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>作用是在内存的动态存储区中分配一个长度为 size 的连接空间。些函数的值（即返回值）是一个指向分配空间起始地址的指针（基类型为 void）。如果些函数未能成功地执行（例如内存空间不足）则返回空指针 NULL。&lt;/p></description></item><item><title>C 数据结构代码</title><link>https://blog.yexca.net/archives/14/</link><pubDate>Thu, 11 Nov 2021 23:03:27 +0800</pubDate><guid>https://blog.yexca.net/archives/14/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt"> 1
&lt;/span>&lt;span class="lnt"> 2
&lt;/span>&lt;span class="lnt"> 3
&lt;/span>&lt;span class="lnt"> 4
&lt;/span>&lt;span class="lnt"> 5
&lt;/span>&lt;span class="lnt"> 6
&lt;/span>&lt;span class="lnt"> 7
&lt;/span>&lt;span class="lnt"> 8
&lt;/span>&lt;span class="lnt"> 9
&lt;/span>&lt;span class="lnt">10
&lt;/span>&lt;span class="lnt">11
&lt;/span>&lt;span class="lnt">12
&lt;/span>&lt;span class="lnt">13
&lt;/span>&lt;span class="lnt">14
&lt;/span>&lt;span class="lnt">15
&lt;/span>&lt;span class="lnt">16
&lt;/span>&lt;span class="lnt">17
&lt;/span>&lt;span class="lnt">18
&lt;/span>&lt;span class="lnt">19
&lt;/span>&lt;span class="lnt">20
&lt;/span>&lt;span class="lnt">21
&lt;/span>&lt;span class="lnt">22
&lt;/span>&lt;span class="lnt">23
&lt;/span>&lt;span class="lnt">24
&lt;/span>&lt;span class="lnt">25
&lt;/span>&lt;span class="lnt">26
&lt;/span>&lt;span class="lnt">27
&lt;/span>&lt;span class="lnt">28
&lt;/span>&lt;span class="lnt">29
&lt;/span>&lt;span class="lnt">30
&lt;/span>&lt;span class="lnt">31
&lt;/span>&lt;span class="lnt">32
&lt;/span>&lt;span class="lnt">33
&lt;/span>&lt;span class="lnt">34
&lt;/span>&lt;span class="lnt">35
&lt;/span>&lt;span class="lnt">36
&lt;/span>&lt;span class="lnt">37
&lt;/span>&lt;span class="lnt">38
&lt;/span>&lt;span class="lnt">39
&lt;/span>&lt;span class="lnt">40
&lt;/span>&lt;span class="lnt">41
&lt;/span>&lt;span class="lnt">42
&lt;/span>&lt;span class="lnt">43
&lt;/span>&lt;span class="lnt">44
&lt;/span>&lt;span class="lnt">45
&lt;/span>&lt;span class="lnt">46
&lt;/span>&lt;span class="lnt">47
&lt;/span>&lt;span class="lnt">48
&lt;/span>&lt;span class="lnt">49
&lt;/span>&lt;span class="lnt">50
&lt;/span>&lt;span class="lnt">51
&lt;/span>&lt;span class="lnt">52
&lt;/span>&lt;span class="lnt">53
&lt;/span>&lt;span class="lnt">54
&lt;/span>&lt;span class="lnt">55
&lt;/span>&lt;span class="lnt">56
&lt;/span>&lt;span class="lnt">57
&lt;/span>&lt;span class="lnt">58
&lt;/span>&lt;span class="lnt">59
&lt;/span>&lt;span class="lnt">60
&lt;/span>&lt;span class="lnt">61
&lt;/span>&lt;span class="lnt">62
&lt;/span>&lt;span class="lnt">63
&lt;/span>&lt;span class="lnt">64
&lt;/span>&lt;span class="lnt">65
&lt;/span>&lt;span class="lnt">66
&lt;/span>&lt;span class="lnt">67
&lt;/span>&lt;span class="lnt">68
&lt;/span>&lt;span class="lnt">69
&lt;/span>&lt;span class="lnt">70
&lt;/span>&lt;span class="lnt">71
&lt;/span>&lt;span class="lnt">72
&lt;/span>&lt;span class="lnt">73
&lt;/span>&lt;span class="lnt">74
&lt;/span>&lt;span class="lnt">75
&lt;/span>&lt;span class="lnt">76
&lt;/span>&lt;span class="lnt">77
&lt;/span>&lt;span class="lnt">78
&lt;/span>&lt;span class="lnt">79
&lt;/span>&lt;span class="lnt">80
&lt;/span>&lt;span class="lnt">81
&lt;/span>&lt;span class="lnt">82
&lt;/span>&lt;span class="lnt">83
&lt;/span>&lt;span class="lnt">84
&lt;/span>&lt;span class="lnt">85
&lt;/span>&lt;span class="lnt">86
&lt;/span>&lt;span class="lnt">87
&lt;/span>&lt;span class="lnt">88
&lt;/span>&lt;span class="lnt">89
&lt;/span>&lt;span class="lnt">90
&lt;/span>&lt;span class="lnt">91
&lt;/span>&lt;span class="lnt">92
&lt;/span>&lt;span class="lnt">93
&lt;/span>&lt;span class="lnt">94
&lt;/span>&lt;span class="lnt">95
&lt;/span>&lt;span class="lnt">96
&lt;/span>&lt;span class="lnt">97
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-c" data-lang="c">&lt;span class="line">&lt;span class="cl">&lt;span class="c1">//数组栈的实现
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="cp">#include&lt;/span>&lt;span class="cpf">&amp;lt;stdio.h&amp;gt;&lt;/span>&lt;span class="cp">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">#define MaxSize 50
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="cp">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">typedef&lt;/span> &lt;span class="k">struct&lt;/span> &lt;span class="n">Stack_Array&lt;/span>&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">data&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">MaxSize&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">top&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>&lt;span class="n">Sqstack&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="n">pSqstack&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">void&lt;/span> &lt;span class="nf">Initstack&lt;/span>&lt;span class="p">();&lt;/span> &lt;span class="c1">//初始化
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Isempty&lt;/span>&lt;span class="p">();&lt;/span> &lt;span class="c1">//判断栈空
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Push&lt;/span>&lt;span class="p">();&lt;/span> &lt;span class="c1">//入栈
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Pop&lt;/span>&lt;span class="p">();&lt;/span> &lt;span class="c1">//出栈
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Gettop&lt;/span>&lt;span class="p">();&lt;/span> &lt;span class="c1">//get 栈顶元素
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">int&lt;/span> &lt;span class="nf">main&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">void&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="c1">//测试
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">val&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Sqstack&lt;/span> &lt;span class="n">s1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">pSqstack&lt;/span> &lt;span class="n">ps1&lt;/span>&lt;span class="o">=&amp;amp;&lt;/span>&lt;span class="n">s1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">Initstack&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">s1&lt;/span>&lt;span class="p">);&lt;/span> &lt;span class="c1">//初始化
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nf">Isempty&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">s1&lt;/span>&lt;span class="p">))&lt;/span> &lt;span class="c1">//判断栈空
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;栈为空！&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;栈不为空！&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;输入压栈元素的值&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span> &lt;span class="c1">//压栈 1
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">scanf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;%d&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">Push&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;输入压栈元素的值&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span> &lt;span class="c1">//压栈 2
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">scanf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;%d&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nf">Push&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nf">Isempty&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">))&lt;/span> &lt;span class="c1">//判断栈空
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;栈为空！&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;栈不为空！&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nf">Gettop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">))&lt;/span> &lt;span class="c1">//GET栈顶元素
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;栈顶值为%d&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;栈顶元素查找失败！&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nf">Pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="o">&amp;amp;&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">))&lt;/span> &lt;span class="c1">//出栈
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;出栈成功，出栈元素为%d&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span> &lt;span class="nf">printf&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;出栈失败！&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s">&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">//初始化
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">void&lt;/span> &lt;span class="nf">Initstack&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">pSqstack&lt;/span> &lt;span class="n">ps1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="o">=-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 断栈空
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Isempty&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">pSqstack&lt;/span> &lt;span class="n">ps1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="o">==-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// 栈不满，则进行压栈
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Push&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">pSqstack&lt;/span> &lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="c1">//*val:接受一个地址(int *(&amp;amp;val )
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="o">==&lt;/span>&lt;span class="n">MaxSize&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="o">++&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">data&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="p">]&lt;/span>&lt;span class="o">=*&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">;&lt;/span>&lt;span class="c1">//这里传递的是值，这里的*val是*(&amp;amp;val),&amp;amp;val是由主调函数输入
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="c1">//也可写作ps1-&amp;gt;data[++ps1-&amp;gt;top]=*val; 一定是++ps1-&amp;gt;top
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span> &lt;span class="k">return&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">//若栈不空，则进行出栈，用val返回栈顶元素
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Pop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">pSqstack&lt;/span> &lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nf">Isempty&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">*&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">data&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="o">--&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">//get栈顶元素，用val返回栈顶元素
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="nf">Gettop&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">pSqstack&lt;/span> &lt;span class="n">ps1&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="kt">int&lt;/span> &lt;span class="o">*&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nf">Isempty&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">*&lt;/span>&lt;span class="n">val&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">data&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">ps1&lt;/span>&lt;span class="o">-&amp;gt;&lt;/span>&lt;span class="n">top&lt;/span>&lt;span class="p">];&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span> &lt;span class="mi">1&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>图解简化&lt;/p></description></item><item><title>扬州杏雨后</title><link>https://blog.yexca.net/archives/13/</link><pubDate>Thu, 11 Nov 2021 18:01:33 +0800</pubDate><guid>https://blog.yexca.net/archives/13/</guid><description>&lt;blockquote>
&lt;p>该文章由 ctxbb 编写&lt;/p>
&lt;/blockquote>
&lt;p>&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2021/11-%e6%89%ac%e5%b7%9e%e6%9d%8f%e9%9b%a8%e5%90%8e/1.3cr7a6v19fc0.webp"
loading="lazy"
alt="1"
>
&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2021/11-%e6%89%ac%e5%b7%9e%e6%9d%8f%e9%9b%a8%e5%90%8e/2.6a9nc2b31gg0.webp"
loading="lazy"
alt="2"
>
&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2021/11-%e6%89%ac%e5%b7%9e%e6%9d%8f%e9%9b%a8%e5%90%8e/3.5saqmmz6s380.webp"
loading="lazy"
alt="3"
>
&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2021/11-%e6%89%ac%e5%b7%9e%e6%9d%8f%e9%9b%a8%e5%90%8e/4.4o9isl9872c0.webp"
loading="lazy"
alt="4"
>
&lt;img src="https://cdn.statically.io/gh/yexca/picx-images-hosting@master/2021/11-%e6%89%ac%e5%b7%9e%e6%9d%8f%e9%9b%a8%e5%90%8e/5.5do2087lo300.webp"
loading="lazy"
alt="5"
>&lt;/p></description></item><item><title>原神树脂查看与推送</title><link>https://blog.yexca.net/archives/12/</link><pubDate>Wed, 10 Nov 2021 15:21:30 +0800</pubDate><guid>https://blog.yexca.net/archives/12/</guid><description>&lt;p>虽然米忽悠的米游社提供了原神树脂的查看，但是使用电脑时每次查看还要打开手机然后打开米游社着实有亿点不方便&lt;/p>
&lt;p>原作者文章：&lt;strong>
&lt;a class="link" href="https://ngabbs.com/read.php?tid=29226061&amp;amp;rand=307"
target="_blank" rel="noopener"
>
自己做了一个树脂记录软件
&lt;/a>
&lt;/strong>&lt;/p>
&lt;p>原文软件链接：
&lt;a class="link" href="https://pan.baidu.com/s/1esw3JjgfMZwtzh1nRGOF7Q"
target="_blank" rel="noopener"
>
提取码：1w5b
&lt;/a>
&lt;/p></description></item><item><title>微博视频下载</title><link>https://blog.yexca.net/archives/11/</link><pubDate>Wed, 10 Nov 2021 11:29:51 +0800</pubDate><guid>https://blog.yexca.net/archives/11/</guid><description>&lt;p>首先我们找到要下载的视频 (废话)，复制图中框选部分的链接&lt;/p>
&lt;p>&lt;img src="https://jsd.cdn.zzko.cn/gh/yexca/picx-images-hosting@master/2021/11-%e5%be%ae%e5%8d%9a/image.5c0pgzubl8.webp"
loading="lazy"
alt="image"
>&lt;/p>
&lt;p>然后打开
&lt;a class="link" href="https://weibo.iiilab.com/"
target="_blank" rel="noopener"
>
视频下载解析网站
&lt;/a>
，输入复制的链接然后点击解析视频图片 (如需验证根据网站提示进行即可)&lt;/p></description></item><item><title>WordPress 添加返回上一页按钮</title><link>https://blog.yexca.net/archives/10/</link><pubDate>Wed, 10 Nov 2021 11:06:27 +0800</pubDate><guid>https://blog.yexca.net/archives/10/</guid><description>&lt;p>多数情况下，我们浏览网页一般使用浏览器或系统自带的返回，但有些系统的交互逻辑及其不好用，这时在网页添加一个返回上一页按钮可以极大改善浏览体验&lt;/p>
&lt;p>首先，在 WordPress 的后台点击“外观-自定义”来到可视化编辑页面&lt;/p></description></item><item><title>Win11 官方安卓子系统安装</title><link>https://blog.yexca.net/archives/9/</link><pubDate>Tue, 09 Nov 2021 23:45:42 +0800</pubDate><guid>https://blog.yexca.net/archives/9/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;p>准备条件：win11 专业版及以上，将系统地区调至美国&lt;/p>
&lt;p>在设置-&amp;gt;应用 -&amp;gt; 可选功能 -&amp;gt; 更多Windows功能中勾选虚拟机平台，然后重启系统即可&lt;/p></description></item><item><title>SQL 语句的一些语法细节 (SQL SERVER 语句)</title><link>https://blog.yexca.net/archives/8/</link><pubDate>Mon, 08 Nov 2021 11:51:18 +0800</pubDate><guid>https://blog.yexca.net/archives/8/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;h2 id="1sql-order-by-关键字">1.SQL ORDER BY 关键字
&lt;/h2>&lt;p>ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。&lt;/p>
&lt;p>ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序，您可以使用 DESC 关键字&lt;/p></description></item><item><title>关于在使用 Navicat 连接 SQL server 的一些问题</title><link>https://blog.yexca.net/archives/7/</link><pubDate>Sun, 07 Nov 2021 23:41:46 +0800</pubDate><guid>https://blog.yexca.net/archives/7/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;p>在安装完 SQL server 和 navicat 后在 navicat 中添加数据库：&lt;/p>
&lt;p>1.连接名无要求，按照自己需要命名&lt;/p>
&lt;p>2.打开安装好的 SQL server 配置管理器&lt;/p>
&lt;p>注意 SQL Server（SQLEXPRESS）要保证在运行中，否则 navicat 无法连接&lt;br>
双击打开后点击服务，可以看到自己的主机名&lt;/p></description></item><item><title>VsCode 配置 C 语言环境</title><link>https://blog.yexca.net/archives/6/</link><pubDate>Sun, 07 Nov 2021 23:32:26 +0800</pubDate><guid>https://blog.yexca.net/archives/6/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;p>其文章:
&lt;a class="link" href="https://blog.hiyoung.icu/2022/12/15/997871bc263d/"
target="_blank" rel="noopener"
>
https://blog.hiyoung.icu/2022/12/15/997871bc263d/
&lt;/a>
&lt;/p>
&lt;/blockquote>
&lt;p>VSC只是一个纯文本&lt;strong>编辑器&lt;/strong>，不是 IDE (集成开发环境)，不含&lt;strong>编译器&lt;/strong>和许多其它功能，所以编译器要自己装好&lt;/p>
&lt;p>第一步：在 vscode 官网下载软件，链接：
&lt;a class="link" href="https://code.visualstudio.com/"
target="_blank" rel="noopener"
>
Visual Studio Code – Code Editing. Redefined
&lt;/a>
&lt;/p></description></item><item><title>VsCode 配置 Python 环境</title><link>https://blog.yexca.net/archives/5/</link><pubDate>Sun, 07 Nov 2021 11:28:58 +0800</pubDate><guid>https://blog.yexca.net/archives/5/</guid><description>&lt;h2 id="正文">正文
&lt;/h2>&lt;p>安装完成 VS Code 和 Python 并配置环境变量后&lt;/p>
&lt;p>打开 VS Code，进入拓展搜索并下载 Python&lt;/p>
&lt;p>在资源管理器新建一个 Python 源文件 (.py) 后，资源管理器会在.vscode 文件夹下生成 setting.json 文件（若没有自动生成可自己创建）&lt;/p></description></item><item><title>如何自动调用当前系统默认的邮件客户端</title><link>https://blog.yexca.net/archives/4/</link><pubDate>Sat, 06 Nov 2021 17:05:36 +0800</pubDate><guid>https://blog.yexca.net/archives/4/</guid><description>&lt;blockquote>
&lt;p>该文章由
&lt;a class="link" href="https://blog.hiyoung.icu/"
target="_blank" rel="noopener"
>
Hiyoung
&lt;/a>
编写&lt;/p>
&lt;/blockquote>
&lt;p>mailto：可以自动调用当前系统默认的邮件客户端，并自动填充收件人、抄送人、密送人、主题、内容。&lt;/p>
&lt;p>参数说明:&lt;br>
mailto： 收件人，多个以;分隔&lt;br>
cc： 抄送人，多个以;分隔&lt;br>
bcc： 密送人，多个以;分隔&lt;br>
subject： 主题&lt;br>
body： 内容&lt;/p></description></item><item><title>WordPress 嵌入 BiLiBiLi 视频说明</title><link>https://blog.yexca.net/archives/3/</link><pubDate>Sat, 06 Nov 2021 16:43:20 +0800</pubDate><guid>https://blog.yexca.net/archives/3/</guid><description>&lt;h2 id="正文">正文
&lt;/h2>&lt;p>首先到待嵌入的视频将鼠标移到分享按钮上（不用点击）&lt;/p>
&lt;p>然后移到嵌入代码并复制&lt;/p>
&lt;p>（本例代码如下）&lt;/p>
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-html" data-lang="html">&lt;span class="line">&lt;span class="cl">&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="nt">iframe&lt;/span> &lt;span class="na">src&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;//player.bilibili.com/player.html?aid=583631611&amp;amp;bvid=BV1Tz4y1X7Bg&amp;amp;cid=206708397&amp;amp;page=1&amp;#34;&lt;/span> &lt;span class="na">scrolling&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;no&amp;#34;&lt;/span> &lt;span class="na">border&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;0&amp;#34;&lt;/span> &lt;span class="na">frameborder&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;no&amp;#34;&lt;/span> &lt;span class="na">framespacing&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;0&amp;#34;&lt;/span> &lt;span class="na">allowfullscreen&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s">&amp;#34;true&amp;#34;&lt;/span>&lt;span class="p">&amp;gt;&lt;/span> &lt;span class="p">&amp;lt;/&lt;/span>&lt;span class="nt">iframe&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;p>我们需要这串代码中的“&lt;strong>aid&lt;/strong>”和“&lt;strong>cid&lt;/strong>”部分（即 aid=583631611 和 cid=206708397 ）&lt;/p></description></item><item><title>WordPress 限制用户访问媒体库</title><link>https://blog.yexca.net/archives/2/</link><pubDate>Sat, 06 Nov 2021 14:31:04 +0800</pubDate><guid>https://blog.yexca.net/archives/2/</guid><description>&lt;p>默认情况下，WordPress 允许作者​​查看您网站媒体库中的所有图像。允许作者查看媒体库中的所有文件。 他们还可以查看由管理员 ， 编辑或其他作者上传的图像。&lt;/p></description></item><item><title>Hello World！</title><link>https://blog.yexca.net/archives/1/</link><pubDate>Sat, 06 Nov 2021 14:15:19 +0800</pubDate><guid>https://blog.yexca.net/archives/1/</guid><description>&lt;p>欢迎使用 WordPress。这是您的第一篇文章。编辑或删除它，然后开始写作吧！&lt;/p></description></item><item><title>关于</title><link>https://blog.yexca.net/about/</link><pubDate>Thu, 04 Nov 2021 20:20:20 +0800</pubDate><guid>https://blog.yexca.net/about/</guid><description>&lt;p>欢迎!~，我是
&lt;a class="link" href="https://blog.yexca.net/"
>
yexca (叶卡)
&lt;/a>
&lt;/p>
&lt;h2 id="这是哪">这是哪？
&lt;/h2>&lt;p>欢迎来到我的个人博客！这里是我记录学习与探索的小天地，最近偶尔也分享一些生活中的小感悟&lt;/p>
&lt;h2 id="这有啥">这有啥？
&lt;/h2>&lt;p>这个博客是我的 &lt;strong>个人知识库&lt;/strong>，记录了我在学习过程中遇到的难题和解决方法，也会不定时分享一些探索的内容&lt;/p></description></item><item><title>归档</title><link>https://blog.yexca.net/archives/</link><pubDate>Thu, 04 Nov 2021 20:20:20 +0800</pubDate><guid>https://blog.yexca.net/archives/</guid><description/></item><item><title>搜索</title><link>https://blog.yexca.net/search/</link><pubDate>Thu, 04 Nov 2021 20:20:20 +0800</pubDate><guid>https://blog.yexca.net/search/</guid><description/></item></channel></rss>