HEXO官方文档学习笔记

HEXO官方文档学习笔记

hexo官方文档

一. hexo 开始使用

1.1 概述

环境必须包括 nodejsgit ,从对应的官网进行对应的安装;

1.2 建站(测试生成静态文件并本地运行)

执行下面的代码:

$ cd D:hexo/    #换成你的目录
$ npm install -g hexo-cli  #安装hexo脚手架
$ hexo init     #Hexo自动在当前文件夹下下载搭建网站所需的所有文件
$ npm install   #安装依赖包

$ hexo g        #完整命令为hexo generate,生成静态文件
$ hexo s        #完整命令为hexo server,启动服务器,用来本地预览

生成的项目的目录如下,下面对各个目录功能介绍:

.
├── _config.yml
├── package.json
├── scaffolds
├── source
|   ├── _drafts
|   └── _posts
└── themes
  • _config.yml:网站的 配置 信息,您可以在此配置大部分的参数;
  • scaffolds:模版 文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件:hexo new title.md
  • source:资源文件夹是存放用户资源的地方; _posts 文件夹指的是发布文章的文件夹;_drafts为文章的草稿文件夹,除 _posts 文件夹之,开头命名为 _ (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。
  • themes:主题 文件夹。Hexo 会根据主题来生成静态页面。

1.3 配置(_config.yml 中修改网站配置)

_config.yml 文件中的 # Home page setting 在后面介绍;

1.3.1 网站(# Site)

参数 | 描述
------------- | ------------------------------------------- |------------------
title | 网站标题
subtitle | 网站副标题
description | 网站描述
author | 您的名字
language | 网站使用的语言
timezone | 网站时区。Hexo 默认使用您电脑的时区。时区列表。比如说:America/New_York, Japan, 和 UTC 。

description主要用于SEO,告诉搜索引擎一个关于您站点的简单描述,通常建议在其中包含您网站的关键词。author参数用于主题显示文章的作者。

1.3.2 网址(# URL)

参数 描述 默认值
url 网址
root 网站根目录
permalink 文章的 永久链接 格式 :year/:month/:day/:title/
permalink_defaults 永久链接中各部分的默认值

如果您的网站存放在子目录中,例如 http://yoursite.com/blog,则请将您的 url 设为 http://yoursite.com/blog 并把 root 设为 /blog/

1.3.3 目录(# Directory)——建议刚学hexo时不改动

参数 描述 默认值
source_dir 资源文件夹,这个文件夹用来存放内容。 source
public_dir 公共文件夹,这个文件夹用于存放生成的站点文件。 public
tag_dir 标签文件夹 tags
archive_dir 归档文件夹 archives
category_dir 分类文件夹 categories
code_dir Include code 文件夹 downloads/code
i18n_dir 国际化(i18n)文件夹 :lang
skip_render 跳过指定文件的渲染,您可使用 glob 表达式来匹配路径。

1.3.4 文章(# Writing)

参数 描述 默认值
new_post_name 新文章的文件名称 :title.md
default_layout 预设布局 post
auto_spacing 在中文和英文之间加入空格 false
titlecase 把标题转换为 title case false
external_link 在新标签中打开链接 true
filename_case 把文件名称转换为 (1) 小写或 (2) 大写 0
render_drafts 显示草稿 false
post_asset_folder 启动 Asset 文件夹 false
relative_link 把链接改为与根目录的相对位址 false
future 显示未来的文章 true
highlight 代码块的设置

1.3.5 分类 & 标签(# Category & Tag)

参数 描述 默认值
default_category 默认分类 uncategorized
category_map 分类别名
tag_map 标签别名

1.3.6 日期 / 时间格式(# Date / Time format)

参数 描述 默认值
date_format 日期格式 YYYY-MM-DD
time_format 时间格式 H:mm:ss

Hexo 使用 Moment.js 来解析和显示时间。

1.3.6 分页(# Pagination)

参数 描述 默认值
per_page 每页显示的文章量 (0 = 关闭分页功能) 10
pagination_dir 分页目录 page

1.3.6 扩展(# Extensions)

参数 | 描述
------------- | ------------------------------------------- |------------------
theme | 当前主题名称。值为false时禁用主题
deploy | 部署部分的设置

1.4 命令

1.4.1 指令

# init : hexo初始化新建一个网站,没有folder默认当前文件夹建立网站项目,一般是在网站建立文件夹下使用gitBash直接输入 hexo init 进行初始化;
$ hexo init [folder]

# new : 新建一篇文章,若没有设置 layout 的话,默认使用 _config.yml 中的 default_layout 参数post代替,如果标题包含空格的话,请使用引号括起来;
$ hexo new [layout] 

# generate : 生成静态文件;可选参数:-d, --deploy   文件生成后立即部署网站 ;-w, --watch    监视文件变动
$ hexo generate 
$ hexo g  #简写

# publish : 发表草稿
$ hexo publish [layout] <filename>

# server : 启动服务器,默认网址: http://localhost:4000/。可选参数:-i  重设IP地址;  -p, --port  重设端口;-s, --static   只使用静态文件;-l, --log   启动日记记录,使用覆盖记录格式
$ hexo server

# deploy : 部署网站。可选参数:-g, --generate 部署之前预先生成静态文件
$ hexo deploy
$ hexo d  # 简写

# render : 渲染文件。可选参数:-o, --output   设置输出路径
$ hexo render <file1> [file2] ...

# migrate : 从其他博客系统 迁移内容。
$ hexo migrate <type>

# clean : 清除缓存文件 (db.json) 和已生成的静态文件 (public),发布新的网站前应执行该命令。
$ hexo clean

# list : 列出网站资料。
$ hexo list <type>

# version : 显示 Hexo 版本。
$ hexo version
</code></pre> 
 <h4>1.4.2 选项</h4> 
 <pre><code class="bash"># 安全模式 : 在安全模式下,不会载入插件和脚本。当您在安装新插件遭遇问题时,可以尝试以安全模式重新执行。
$ hexo --safe

# 调试模式 : 在终端中显示调试信息并记录到 debug.log。当您碰到问题时,可以尝试用调试模式重新执行一次,并 提交调试信息到 GitHub。
$ hexo --debug

# 简洁模式 : 隐藏终端信息。
$ hexo --silent

# 自定义配置文件的路径 : 自定义配置文件的路径,执行后将不再使用 _config.yml。
$ hexo --config custom.yml

# 显示草稿 : 显示 source/_drafts 文件夹中的草稿文章。
$ hexo --draft

# 自定义 CWD : 自定义当前工作目录(Current working directory)的路径。
$ hexo --cwd /path/to/cwd
</code></pre> 
 <h2>二. 基本操作</h2> 
 <h3>2.1 写作</h3> 
 <p>创建一篇新文章的命令:</p> 
 <pre><code class="bash"># layout 表示文章的布局,默认是post,可修改 _config.yml 中的 default_layout 参数来指定默认布局
$ hexo new [layout] <title>
</code></pre> 
 <h4>2.1.1 布局(Layout)</h4> 
 <p>Hexo 有三种默认布局:post、page 和 draft,也可以自定义其他布局,都将储存到 source/_posts 文件夹;</p> 
 <p>【若不想你的文章被处理,你可以将 Front-Matter 中的layout: 设为 false 。】</p> 
 <h4>2.1.2 文件名称</h4> 
 <p>Hexo 默认以标题做为文件名称,但您可编辑 new_post_name 参数来改变默认的文件名称,举例来说,设为 :year-:month-:day-:title.md 可让您更方便的通过日期来管理文章。</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>:title</td> 
    <td>标题(小写,空格将会被替换为短杠)</td> 
   </tr> 
   <tr> 
    <td>:year</td> 
    <td>建立的年份,比如, 2015</td> 
   </tr> 
   <tr> 
    <td>:month</td> 
    <td>建立的月份(有前导零),比如, 04</td> 
   </tr> 
   <tr> 
    <td>:i_month</td> 
    <td>建立的月份(无前导零),比如, 4</td> 
   </tr> 
   <tr> 
    <td>:day</td> 
    <td>建立的日期(有前导零),比如, 07</td> 
   </tr> 
   <tr> 
    <td>:i_day</td> 
    <td>建立的日期(无前导零),比如, 7</td> 
   </tr> 
  </tbody> 
 </table> 
 <h4>2.1.3 草稿</h4> 
 <p>草稿存放在 <code>source/_drafts</code> 目录下,通过 <code>hexo new draft :title</code> 建立,再通过 <code>hexo publish [layout] <title></code> 来指定布局并发布文章;</p> 
 <p>【草稿默认不会显示在页面中,您可在执行时加上 --draft 参数,或是把 render_drafts 参数设为 true 来预览草稿。】</p> 
 <h4>2.1.4 模版(Scaffold)</h4> 
 <p>新建文章时,Hexo 会根据 scaffolds 文件夹内相对应的文件来建立文件;<br> 例如 : <code>$ hexo new photo "My Gallery"</code>,表示Hexo 会尝试在 scaffolds 文件夹中寻找 photo.md,并根据其内容建立文章,以下是您可以在模版中使用的变量:</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>layout</td> 
    <td>布局</td> 
   </tr> 
   <tr> 
    <td>title</td> 
    <td>标题</td> 
   </tr> 
   <tr> 
    <td>date</td> 
    <td>文件建立日期</td> 
   </tr> 
  </tbody> 
 </table> 
 <h3>2.2 Front-matter</h3> 
 <p>Front-matter 是文件最上方以 --- 分隔的区域,用于指定个别文件的变量;</p> 
 <pre><code class="m">title: Hello World
date: 2013/7/13 20:46:25
---
</code></pre> 
 <p>以下是预先定义的参数,您可在模板中使用这些参数值并加以利用。</p> 
 <table> 
  <thead> 
   <tr> 
    <th>参数</th> 
    <th>描述</th> 
    <th>默认值</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>layout</td> 
    <td>布局</td> 
   </tr> 
   <tr> 
    <td>title</td> 
    <td>标题</td> 
   </tr> 
   <tr> 
    <td>date</td> 
    <td>建立日期</td> 
    <td>文件建立日期</td> 
   </tr> 
   <tr> 
    <td>updated</td> 
    <td>更新日期</td> 
    <td>文件更新日期</td> 
   </tr> 
   <tr> 
    <td>comments</td> 
    <td>开启文章的评论功能</td> 
    <td>true</td> 
   </tr> 
   <tr> 
    <td>tags</td> 
    <td>标签(不适用于分页)</td> 
   </tr> 
   <tr> 
    <td>categories</td> 
    <td>分类(不适用于分页)</td> 
   </tr> 
   <tr> 
    <td>permalink</td> 
    <td>覆盖文章网址</td> 
   </tr> 
  </tbody> 
 </table> 
 <h4>2.2.1 分类和标签</h4> 
 <p>只有文章支持分类和标签,您可以在 Front-matter 中设置。Hexo 中的分类具有顺序性和层次性,而标签没有顺序和层次,区别于其他系统;</p> 
 <pre><code class="m">categories:
- Diary
tags:
- PS3
- Games
</code></pre> 
 <h4>2.2.2 JSON Front-matter</h4> 
 <p>除了 YAML 外,你也可以使用 JSON 来编写 Front-matter,只要将 --- 代换成 ;;; 即可</p> 
 <pre><code class="m">"title": "Hello World",
"date": "2013/7/13 20:46:25"
;;;
</code></pre> 
 <h3>2.3 标签插件(Tag Plugins)</h3> 
 <p>标签插件和 Front-matter 中的标签不同,它们是用于在文章中快速插入特定内容的插件。</p> 
 <h4>2.3.1 引用块</h4> 
 <p>在文章中插入引言,可包含作者、来源和标题。</p> 
 <p><strong>别号: quote</strong></p> 
 <pre><code class="m">方式1:提供参数, 这些参数将会被显示出来
{% blockquote [author[, source]] [link] [source_link_title] %}
content
{% endblockquote %}

方式2:没有提供参数,则只输出普通的 blockquote

方式3:引用书上的句子
{% blockquote David Levithan, Wide Awake %}
Do not just seek happiness for yourself. Seek happiness for all. Through kindness. Through mercy.
{% endblockquote %}

方式4:引用 Twitter
{% blockquote @DevDocs https://twitter.com/devdocs/status/356095192085962752 %}
NEW: DevDocs now comes with syntax highlighting. http://devdocs.io
{% endblockquote %}

方式5:引用网络上的文章
{% blockquote Seth Godin http://sethgodin.typepad.com/seths_blog/2009/07/welcome-to-island-marketing.html Welcome to Island Marketing %}
Every interaction is both precious and an opportunity to delight.
{% endblockquote %}
</code></pre> 
 <h4>2.3.2 代码块</h4> 
 <p>在文章中插入代码。</p> 
 <p><strong>别名: code</strong></p> 
 <pre><code class="m">方式1:提供参数, 这些参数将会被显示出来
{% codeblock [title] [lang:language] [url] [link text] %}
code snippet
{% endcodeblock %}

方式2:普通的代码块
{% codeblock %}
alert('Hello World!');
{% endcodeblock %}

方式3:指定语言
{% codeblock lang:objc %}
[rectangle setX: 10 y: 10 width: 20 height: 20];
{% endcodeblock %}

方式4:附加说明
{% codeblock Array.map %}
array.map(callback[, thisArg])
{% endcodeblock %}

方式5:附加说明和网址
{% codeblock _.compact http://underscorejs.org/#compact Underscore.js %}
_.compact([0, 1, false, 2, '', 3]);
=> [1, 2, 3]
{% endcodeblock %}
</code></pre> 
 <h4>2.3.3 反引号代码块(类似md中的代码块格式)</h4> 
 <p>它使用三个反引号来包裹;<br> <code>[language] [title] [url] [link text] code snippet</code></p> 
 <h4>2.3.4 Pull Quote</h4> 
 <p>在文章中插入 Pull quote。</p> 
 <pre><code class="m">{% pullquote [class] %}
content
{% endpullquote %}
</code></pre> 
 <h4>2.3.5 jsFiddle</h4> 
 <p>在文章中嵌入 jsFiddle。</p> 
 <pre><code class="m">{% jsfiddle shorttag [tabs] [skin] [width] [height] %}
</code></pre> 
 <h4>2.3.6 Gist</h4> 
 <p>在文章中嵌入 Gist。</p> 
 <pre><code class="m">{% gist gist_id [filename] %}
</code></pre> 
 <h4>2.3.7 iframe</h4> 
 <p>在文章中插入 iframe。</p> 
 <pre><code class="m">{% iframe url [width] [height] %}
</code></pre> 
 <h4>2.3.8 Image</h4> 
 <p>在文章中插入指定大小的图片。</p> 
 <pre><code class="m">{% img [class names] /path/to/image [width] [height] [title text [alt text]] %}
</code></pre> 
 <h4>2.3.9 Link</h4> 
 <p>在文章中插入链接,并自动给外部链接添加 target="_blank" 属性。</p> 
 <pre><code class="m">{% link text url [external] [title] %}
</code></pre> 
 <h4>2.3.10 Include Code</h4> 
 <p>插入 source 文件夹内的代码文件。</p> 
 <pre><code class="m">{% include_code [title] [lang:language] path/to/file %}
</code></pre> 
 <h4>2.3.11 Youtube</h4> 
 <p>在文章中插入 Youtube 视频。</p> 
 <pre><code class="m">{% youtube video_id %}
</code></pre> 
 <h4>2.3.12 Vimeo</h4> 
 <p>在文章中插入 Vimeo 视频。</p> 
 <pre><code class="m">{% vimeo video_id %}
</code></pre> 
 <h4>2.3.13 引用文章</h4> 
 <p>引用其他文章的链接。</p> 
 <pre><code class="m">{% post_path slug %}
{% post_link slug [title] %}
</code></pre> 
 <h4>2.3.14 引用资源</h4> 
 <p>引用文章的资源。</p> 
 <pre><code class="m">{% asset_path slug %}
{% asset_img slug [title] %}
{% asset_link slug [title] %}
</code></pre> 
 <h4>2.3.15 Raw</h4> 
 <p>如果您想在文章中插入 Swig 标签,可以尝试使用 Raw 标签,以免发生解析异常。</p> 
 <pre><code class="m">{% raw %}
content
{% endraw %}
</code></pre> 
 <h3>2.4 资源文件夹</h3> 
 <p>资源(Asset)代表 source 文件夹中除了文章以外的所有文件,例如图片、CSS、JS 文件等。</p> 
 <h4>2.4.1 文章资源文件夹</h4> 
 <p>将 config.yml 文件中的 <code>post_asset_folder</code> 选项设为 true 来打开,有规律地提供图片和其他资源以及想要将他们的资源分布在各个文章上;当资源文件管理功能打开后,Hexo将会在你每一次通过 <code>hexo new [layout] <title></code> 命令创建新文章时自动创建一个文件夹。这个资源文件夹将会有与这个 <code>markdown 文件一样的名字</code>。将所有与你的文章有关的资源放在这个关联文件夹中之后,你可以通过相对路径来引用它们,这样你就得到了一个更简单而且方便得多的工作流。</p> 
 <h4>2.4.2 相对路径引用的标签插件</h4> 
 <p>通过常规的 markdown 语法和相对路径来引用图片和其它资源可能会导致它们在存档页或者主页上显示不正确。<br> Hexo 3 的发布,许多新的标签插件被加入到了核心代码中。这使得你可以更简单地在文章中引用你的资源。<br> 正确的引用图片方式是使用下列的标签插件而不是 markdown 语法 <code>[图片上传失败...(image-3fd250-1576230489118)]</code>:</p> 
 <pre><code class="m">{% asset_path slug %}
{% asset_img slug [title] %}
{% asset_link slug [title] %}

通过下面这种方式,图片将会同时出现在文章和主页以及归档页中。
{% asset_img example.jpg This is an example image %}
</code></pre> 
 <h3>2.5 数据文件夹</h3> 
 <p>有时候可能需要在主题中使用某些资料,而这些资料并不在文章内,并且是需要重复使用的,那么您可以考虑使用 Hexo 3.0 新增的「数据文件」功能。此功能会载入 <code>source/_data</code> 内的 <code>YAML 或 JSON</code> 文件,如此一来您便能在网站中复用这些文件;<br> 例子:在 source/_data 文件夹中新建 menu.yml 文件:</p> 
 <pre><code>Home: /
Gallery: /gallery/
Archives: /archives/
</code></pre> 
 <p>就能在模板中使用这些资料:</p> 
 <pre><code class="js"><% for (var link in site.data.menu) { %>
  <a href="<%= site.data.menu[link] %>"> <%= link %> </a>
<% } %>
</code></pre> 
 <p>渲染结果如下 :</p> 
 <pre><code class="js"><a href="/"> Home </a>
<a href="/gallery/"> Gallery </a>
<a href="/archives/"> Archives </a>
</code></pre> 
 <h3>2.6 服务器(本地预览效果)</h3> 
 <p>Hexo 3.0 把服务器独立成了个别模块,安装 hexo-server 才能使用:<code>npm install hexo-server --save</code>;安装完后执行 <code>hexo server</code>启动服务器,也可以改变一些参数,参考<code>命令->指令</code>的知识;</p> 
 <h4>2.6.1 静态模式 && 自定义 IP</h4> 
 <pre><code class="bash"># 在静态模式下,服务器只处理 public 文件夹内的文件,而不会处理文件变动,在执行时,您应该先自行执行 hexo generate;
$ hexo server -s
# 自定义 IP地址,对于一台使用无线网络的笔记本电脑,除了指向本机的127.0.0.1外,通常还有一个192.168.*.*的局域网IP; hexo server -i 127.0.0.1 -p 5000
$ hexo server -i 192.168.1.1
</code></pre> 
 <h4>2.6.2 Pow(略)</h4> 
 <p>Pow 是一个 Mac 系统上的零配置 Rack 服务器,它也可以作为一个简单易用的静态文件服务器来使用。</p> 
 <h3>2.7 生成器</h3> 
 <p>Hexo 生成静态文件指令:<code>$ hexo generate</code>,参考<code>命令->指令</code>的知识;</p> 
 <h4>监视文件变动 && 完成后部署</h4> 
 <pre><code class="bash"># 监视文件变动并立即重新生成静态文件,在生成时会比对文件的 SHA1 checksum,只有变动的文件才会写入;
$ hexo generate --watch
# 在生成完毕后自动部署网站,下面两个命令的作用是相同的。
$ hexo generate --deploy
$ hexo deploy --generate
# 上面命令的简介形式
$ hexo g -d
$ hexo d -g
</code></pre> 
 <h3>2.8 部署</h3> 
 <p>Hexo 通过指令 <code>$ hexo deploy</code> 实现网站部署到指定的服务器中,在执行此命令前要对网站根目录下的 <code>_config.yml</code> 中修改参数(<strong>注意yml文件格式</strong>),见下方实现 <code>gitee pages</code> 部署:</p> 
 <pre><code class="bash">deploy:
  type: git
  repository: git@gitee.com:geekleng/hexoblog.git     #发布到gitee,还可以加上github Page 页面
  branch: master
</code></pre> 
 <p>部署多个 deployer,Hexo 会依照顺序执行每个 deployer:</p> 
 <pre><code class="bash">deploy:
- type: git
  repo:
- type: heroku
  repo:
</code></pre> 
 <p>【YAML依靠缩进来确定元素间的从属关系。因此,请确保每个deployer的缩进长度相同,并且使用空格缩进。】</p> 
 <h4>2.8.1 Git</h4> 
 <ul> 
  <li>先安装 <code>hexo-deployer-git</code> 包:<code>$ npm install hexo-deployer-git --save</code> </li> 
  <li>修改<code>_config.yml</code> 中参数;</li> 
 </ul> 
 <pre><code class="bash">deploy:
  type: git
  repo: <repository url>
  branch: [branch]
  message: [message]
</code></pre> 
 <table> 
  <thead> 
   <tr> 
    <th>参数</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>repo</td> 
    <td>库(Repository)地址</td> 
   </tr> 
   <tr> 
    <td>branch</td> 
    <td>分支名称。如果您使用的是 GitHub 或 GitCafe 的话,程序会尝试自动检测。</td> 
   </tr> 
   <tr> 
    <td>message</td> 
    <td>自定义提交信息 (默认为 Site updated: {{ 当前时间('YYYY-MM-DD HH:mm:ss') }})</td> 
   </tr> 
  </tbody> 
 </table> 
 <h2>三. 自定义</h2> 
 <h3>3.1 永久链接</h3> 
 <p>可以在HEXO网站配置文件 <code>_config.yml</code> 配置中调整网站的永久链接或者在每篇文章的 <code>Front-matter</code> 中指定。</p> 
 <h4>3.1.1 变量</h4> 
 <p>使用下面的变量或是使用 <code>Front-matter</code> 中的所有属性;</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>:year</td> 
    <td>文章的发表年份(4 位数)</td> 
   </tr> 
   <tr> 
    <td>:month</td> 
    <td>文章的发表月份(2 位数)</td> 
   </tr> 
   <tr> 
    <td>:i_month</td> 
    <td>文章的发表月份(去掉开头的零)</td> 
   </tr> 
   <tr> 
    <td>:day</td> 
    <td>文章的发表日期 (2 位数)</td> 
   </tr> 
   <tr> 
    <td>:i_day</td> 
    <td>文章的发表日期(去掉开头的零)</td> 
   </tr> 
   <tr> 
    <td>:title</td> 
    <td>文件名称</td> 
   </tr> 
   <tr> 
    <td>:post_title</td> 
    <td>文章标题</td> 
   </tr> 
   <tr> 
    <td>:id</td> 
    <td>文章 ID</td> 
   </tr> 
   <tr> 
    <td>:category</td> 
    <td>分类。如果文章没有分类,则是 default_category 配置信息。</td> 
   </tr> 
  </tbody> 
 </table> 
 <p>或在 <code>permalink_defaults</code> 参数下调整永久链接中各变量的默认值:</p> 
 <pre><code class="bash">permalink_defaults:
  lang: en
</code></pre> 
 <h4>3.1.2 多语种支持</h4> 
 <p>若要建立一个多语种的网站,您可修改 new_post_name 和 permalink 参数,如下:</p> 
 <pre><code class="bash">new_post_name: :lang/:title.md  # 新的博文的文件名
permalink: :lang/:title/  # 生成的链接的格式。带井号的是默认的格式;规则也比较简单,标签前面要加英文冒号。
</code></pre> 
 <p>当您建立新文章时,文章会被储存到:</p> 
 <pre><code class="bash">$ hexo new "Hello World" --lang tw
# => source/_posts/tw/Hello-World.md
</code></pre> 
 <h3>3.2 主题</h3> 
 <p>在HEXO的官网上找到合适的主题,下载压缩包解压到 <code>themes</code> 文件夹中或者是由git直接下载对应主题的包,再修改HEXO网站配置文件 <code>_config.yml</code> 配置中 <code>theme</code> 字段即可;主题的文件架构如下:</p> 
 <pre><code class="m">.
├── _config.yml
├── languages
├── layout
├── scripts
└── source
</code></pre> 
 <h4>3.2.1 _config.yml</h4> 
 <p>主题的配置文件。修改时会自动更新,无需重启服务器。</p> 
 <h4>3.2.2 languages</h4> 
 <p>语言文件夹;HEXO国际化-i18n</p> 
 <h4>3.2.3 layout</h4> 
 <p>布局文件夹。用于存放主题的模板文件,决定了网站内容的呈现方式,Hexo 内建 Swig 模板引擎,可以另外安装插件来获得 EJS、Haml 或 Jade 支持;HEXO模板</p> 
 <h4>3.2.4 scripts</h4> 
 <p>脚本文件夹。在启动时,Hexo 会载入此文件夹内的 JavaScript 文件;HEXO插件</p> 
 <h4>3.2.5 source</h4> 
 <p>资源文件夹,除了模板以外的 <code>Asset</code>,例如 <code>CSS、JavaScript</code> 文件等,都应该放在这个文件夹中。文件或文件夹开头名称为 <code>_(下划线线)</code> 或隐藏的文件会被忽略。</p> 
 <h3>3.3 模版</h3> 
 <p>模板决定了网站内容的呈现方式,以下是各页面相对应的模板名称:</p> 
 <table> 
  <thead> 
   <tr> 
    <th>模板</th> 
    <th>用途</th> 
    <th>回退</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>index</td> 
    <td>首页</td> 
   </tr> 
   <tr> 
    <td>post</td> 
    <td>文章</td> 
    <td>index</td> 
   </tr> 
   <tr> 
    <td>page</td> 
    <td>分页</td> 
    <td>index</td> 
   </tr> 
   <tr> 
    <td>archive</td> 
    <td>归档</td> 
    <td>index</td> 
   </tr> 
   <tr> 
    <td>category</td> 
    <td>分类归档</td> 
    <td>archive</td> 
   </tr> 
   <tr> 
    <td>tag</td> 
    <td>标签归档</td> 
    <td>archive</td> 
   </tr> 
  </tbody> 
 </table> 
 <h4>3.3.1 布局(Layout)</h4> 
 <p>若页面结构类似,可以通过「布局」让两个模板共享相同的结构。一个布局文件必须要能显示 body 变量的内容,如此一来模板的内容才会被显示,举例来说:</p> 
 <pre><code class="html"><!-->index.ejs 文件<-->
index

<!-->layout.ejs 文件<-->
<!DOCTYPE html>
<html>
  <body><%- body %></body>
</html>

<!-->生成文件<-->
<!DOCTYPE html>
<html>
  <body>index</body>
</html>
</code></pre> 
 <p>每个模板都默认使用 layout 布局,您可在 <code>front-matter</code> 指定其他布局,或是设为 <code>false</code> 来关闭布局功能,甚至可在布局中再使用其他布局来建立嵌套布局。</p> 
 <h4>3.3.2 局部模版(Partial)</h4> 
 <p>局部模板让您在不同模板之间共享相同的组件,可利用局部模板功能分割为个别文件,让维护更加便利。</p> 
 <pre><code class="html"><!-->partial/header.ejs文件<-->
<h1 id="logo"><%= config.title %></h1>

<!-->index.ejs文件<-->
<%- partial('partial/header') %>
<div id="content">Home page</div>

<!-->生成文件<-->
<h1 id="logo">My Site</h1>
<div id="content">Home page</div>
</code></pre> 
 <p><strong>局部变量</strong>:局部模板中指定局部变量并使用;</p> 
 <pre><code class="html"><!-->partial/header.ejs文件<-->
<h1 id="logo"><%= title></h1>

<!-->index.ejs文件<-->
<%- partial('partial/header', {title: 'Hello World'}) %>
<div id="content">Home page</div>

<!-->生成文件<-->
<h1 id="logo">Hello World</h1>
<div id="content">Home page</div>
</code></pre> 
 <h4>3.3.3 优化</h4> 
 <p>考虑使用 Hexo 2.7 新增的局部缓存(Fragment Caching) 功能,功能借鉴于 Ruby on Rails,它储存局部内容,下次便能直接使用缓存内容,可以减少文件夹查询并使生成速度更快。可用于页首、页脚、侧边栏等文件不常变动的位置;</p> 
 <pre><code class="html"><%- fragment_cache('header', function(){
  return '<header></header>';
});
</code></pre> 
 <p>如果您使用局部模板的话,可以更简单:</p> 
 <p><code><%- partial('header', {}, {cache: true});</code></p> 
 <p>【注意:若开启了 <code>relative_link</code> 参数(把链接改为与根目录的相对位址),请勿使用局部缓存功能,因为相对链接在每个页面可能不同】</p> 
 <h3>3.4 变量</h3> 
 <h4>3.4.1 全局变量</h4> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>site</td> 
    <td>网站变量</td> 
   </tr> 
   <tr> 
    <td>page</td> 
    <td>针对该页面的内容以及 front-matter 所设定的变量。</td> 
   </tr> 
   <tr> 
    <td>config</td> 
    <td>网站配置</td> 
   </tr> 
   <tr> 
    <td>theme</td> 
    <td>主题配置。继承自网站配置。</td> 
   </tr> 
   <tr> 
    <td>_ (单下划线)</td> 
    <td>Lodash 函数库</td> 
   </tr> 
   <tr> 
    <td>path</td> 
    <td>当前页面的路径(不含根路径)</td> 
   </tr> 
   <tr> 
    <td>url</td> 
    <td>当前页面的完整网址</td> 
   </tr> 
   <tr> 
    <td>env</td> 
    <td>环境变量</td> 
   </tr> 
  </tbody> 
 </table> 
 <h4>3.4.2 网站变量</h4> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>site.posts</td> 
    <td>所有文章</td> 
   </tr> 
   <tr> 
    <td>site.pages</td> 
    <td>所有分页</td> 
   </tr> 
   <tr> 
    <td>site.categories</td> 
    <td>所有分类</td> 
   </tr> 
   <tr> 
    <td>site.tags</td> 
    <td>所有标签</td> 
   </tr> 
  </tbody> 
 </table> 
 <h4>3.4.3 页面变量</h4> 
 <p><strong>页面(page)</strong></p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>page.title</td> 
    <td>页面标题</td> 
   </tr> 
   <tr> 
    <td>page.date</td> 
    <td>页面建立日期(Moment.js 对象)</td> 
   </tr> 
   <tr> 
    <td>page.updated</td> 
    <td>页面更新日期(Moment.js 对象)</td> 
   </tr> 
   <tr> 
    <td>page.comments</td> 
    <td>留言是否开启</td> 
   </tr> 
   <tr> 
    <td>page.layout</td> 
    <td>布局名称</td> 
   </tr> 
   <tr> 
    <td>page.content</td> 
    <td>页面的完整内容</td> 
   </tr> 
   <tr> 
    <td>page.excerpt</td> 
    <td>页面摘要</td> 
   </tr> 
   <tr> 
    <td>page.more</td> 
    <td>除了页面摘要的其余内容</td> 
   </tr> 
   <tr> 
    <td>page.source</td> 
    <td>页面原始路径</td> 
   </tr> 
   <tr> 
    <td>page.full_source</td> 
    <td>页面的完整原始路径</td> 
   </tr> 
   <tr> 
    <td>page.path</td> 
    <td>页面网址(不含根路径)。我们通常在主题中使用 url_for(page.path)。</td> 
   </tr> 
   <tr> 
    <td>page.permalink</td> 
    <td>页面的完整网址</td> 
   </tr> 
   <tr> 
    <td>page.prev</td> 
    <td>上一个页面。如果此为第一个页面则为 null。</td> 
   </tr> 
   <tr> 
    <td>page.next</td> 
    <td>下一个页面。如果此为最后一个页面则为 null。</td> 
   </tr> 
   <tr> 
    <td>page.raw</td> 
    <td>文章的原始内容</td> 
   </tr> 
   <tr> 
    <td>page.photos</td> 
    <td>文章的照片(用于相簿)</td> 
   </tr> 
   <tr> 
    <td>page.link</td> 
    <td>文章的外部链接(用于链接文章)</td> 
   </tr> 
  </tbody> 
 </table> 
 <p><strong>文章 (post)</strong>: 和 page 布局类似,但是添加了下列变量。</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>page.published</td> 
    <td>如果该文章已发布则为True</td> 
   </tr> 
   <tr> 
    <td>page.categories</td> 
    <td>该文章的所有分类</td> 
   </tr> 
   <tr> 
    <td>page.tags</td> 
    <td>该文章的所有标签</td> 
   </tr> 
  </tbody> 
 </table> 
 <p><strong>首页(index)</strong></p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>page.per_page</td> 
    <td>每页显示的文章数量</td> 
   </tr> 
   <tr> 
    <td>page.total</td> 
    <td>总文章数</td> 
   </tr> 
   <tr> 
    <td>page.current</td> 
    <td>目前页数</td> 
   </tr> 
   <tr> 
    <td>page.current_url</td> 
    <td>目前分页的网址</td> 
   </tr> 
   <tr> 
    <td>page.posts</td> 
    <td>本页文章</td> 
   </tr> 
   <tr> 
    <td>page.prev</td> 
    <td>上一页的页数。如果此页是第一页的话则为 0。</td> 
   </tr> 
   <tr> 
    <td>page.prev_link</td> 
    <td>上一页的网址。如果此页是第一页的话则为 ''。</td> 
   </tr> 
   <tr> 
    <td>page.next</td> 
    <td>下一页的页数。如果此页是最后一页的话则为 0。</td> 
   </tr> 
   <tr> 
    <td>page.next_link</td> 
    <td>下一页的网址。如果此页是最后一页的话则为 ''。</td> 
   </tr> 
   <tr> 
    <td>page.path</td> 
    <td>当前页面的路径(不含根目录)。我们通常在主题中使用 url_for(page.path)。</td> 
   </tr> 
  </tbody> 
 </table> 
 <p><strong>归档 (archive)</strong>:与 index 布局相同,但新增以下变量。</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>page.archive</td> 
    <td>等于 true</td> 
   </tr> 
   <tr> 
    <td>page.year</td> 
    <td>年份归档 (4位)</td> 
   </tr> 
   <tr> 
    <td>page.month</td> 
    <td>月份归档 (没有前导零的2位数)</td> 
   </tr> 
  </tbody> 
 </table> 
 <p><strong>分类 (category)</strong>:与 index 布局相同,但新增以下变量。</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>page.category</td> 
    <td>分类名称</td> 
   </tr> 
  </tbody> 
 </table> 
 <p><strong>标签 (tag)</strong>:与 index 布局相同,但新增以下变量。</p> 
 <table> 
  <thead> 
   <tr> 
    <th>变量</th> 
    <th>描述</th> 
   </tr> 
  </thead> 
  <tbody> 
   <tr> 
    <td>page.tag</td> 
    <td>标签名称</td> 
   </tr> 
  </tbody> 
 </table> 
 <h3>3.5 辅助函数——重难点</h3> 
 <p>HEXO辅助函数官方文档</p> 
 <p>辅助函数帮助您在模版中快速插入内容。</p> 
 <h3>3.6 国际化 (i18n)</h3> 
 <p>HEXO的网站配置文件 <code>_config.yml</code> 中调整 <code>language</code> 字段值的设定,可设定多个语言来调整预设语言的顺位。</p> 
 <pre><code class="bash">language: 
- zh-tw
- en
</code></pre> 
 <h4>3.6.1 语言文件</h4> 
 <p>语言文件可以使用 YAML 或 JSON 编写,并放在主题文件夹中的 languages 文件夹。</p> 
 <h4>3.6. 模板</h4> 
 <p>在模板中,透过 __ 或 _p 辅助函数,即可取得翻译后的字符串,前者用于一般使用;而后者用于复数字符串。</p> 
 <h4>3.6.3 路径</h4> 
 <p>可在 <code>front-matter</code> 中指定该页面的语言,也可在 <code>_config.yml</code> 中修改 <code>i18n_dir</code> 设定,让 Hexo 自动侦测。</p> 
 <p>i18n_dir 的预设值是 :lang:<code>i18n_dir: :lang</code>,Hexo 会捕获网址中的第一段以检测语言,举例来说:</p> 
 <pre><code class="m">/index.html => en
/archives/index.html => en
/zh-tw/index.html => zh-tw
</code></pre> 
 <h3>3.7 插件</h3> 
 <h4>3.7.1 脚本(Scripts)</h4> 
 <p>若代码很简单,建议您编写脚本,您只需要把 JavaScript 文件放到 scripts 文件夹,在启动时就会自动载入。</p> 
 <h4>3.7.2 插件(Packages)</h4> 
 <p>编写自己的插件;首先,在 <code>node_modules</code> 文件夹中建立文件夹,文件夹名称开头必须为 <code>hexo-</code>,如此一来 <code>Hexo</code> 才会在启动时载入否则 Hexo 将会忽略它。<br><br> 文件夹内至少要包含 2 个文件:一个是主程序 <code>index.js</code> ,另一个是 <code>package.json</code> (至少包含name, version, main 属性),描述插件的用途和所依赖的插件。</p> 
 <h4>3.7.3 工具</h4> 
 <p>Hexo 提供的官方工具插件来加速开发:(可在npm上看各自包的用法)</p> 
 <ul> 
  <li>hexo-fs:文件 IO</li> 
  <li>hexo-util:工具程式</li> 
  <li>hexo-i18n:本地化(i18n)</li> 
  <li>hexo-pagination:生成分页资料</li> 
 </ul> 
 <h4>3.7.4 发布</h4> 
 <p>发布你的插件到 HEXO插件列表</p> 
 <ol> 
  <li>Fork hexojs/site </li> 
  <li>把库(repository)复制到电脑上,并安装所依赖的插件。</li> 
 </ol> 
 <pre><code class="bash">$ git clone https://github.com/<username>/site.git
$ cd site
$ npm install
</code></pre> 
 <ol start="3"> 
  <li>编辑 source/_data/plugins.yml,在档案中新增您的插件,例如:</li> 
 </ol> 
 <pre><code class="bash">- name: hexo-server
  description: Server module for Hexo.
  link: https://github.com/hexojs/hexo-server
  tags:
    - official
    - server
    - console
</code></pre> 
 <ol start="4"> 
  <li>推送(push)分支。</li> 
  <li>建立一个新的合并申请(pull request)并描述改动。</li> 
 </ol> 
</article>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1697350289570476032"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(HEXO官方文档学习笔记)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1892453179853959168.htm"
                           title="微信支付-扫码支付全流程" target="_blank">微信支付-扫码支付全流程</a>
                        <span class="text-muted">自娱自乐22</span>
<a class="tag" taget="_blank" href="/search/thinkphp/1.htm">thinkphp</a><a class="tag" taget="_blank" href="/search/php/1.htm">php</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E6%89%AB%E7%A0%81%E6%94%AF%E4%BB%98/1.htm">微信扫码支付</a>
                        <div>微信支付官方文档:`https://pay.weixin.qq.com/wiki/doc/api/index.html`微信支付分为2种模式:【模式一】:商户后台系统根据微信支付规则链接生成二维码,链接中带固定参数productid(可定义为产品标识或订单号)。用户扫码后,微信支付系统将productid和用户唯一标识(openid)回调商户后台系统(需要设置支付回调URL),商户后台系统根据pr</div>
                    </li>
                    <li><a href="/article/1892441060429328384.htm"
                           title="【学习笔记】Elasticsearch之环境搭建" target="_blank">【学习笔记】Elasticsearch之环境搭建</a>
                        <span class="text-muted">聪明马的博客</span>
<a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a>
                        <div>Elasticsearch官网本文是自己在学习Elasticsearch的过程中,记下的觉得非常有用的笔记,希望对大家认识Elasticsearch有一点点帮助。1.什么是Elasticsearch官网上是这么介绍的:Elasticsearchisadistributeddocumentstore.Insteadofstoringinformationasrowsofcolumnardata,El</div>
                    </li>
                    <li><a href="/article/1892431724265140224.htm"
                           title="React学习笔记(组件通信)_千峰教育 react" target="_blank">React学习笔记(组件通信)_千峰教育 react</a>
                        <span class="text-muted">m0_54846402</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                        <div>reduxprinciple-+//定义一个dispatch的方法,接收到动作之后,自动调用constdispatch=(action)=>{changeState(action)renderCount(countState)}```创建createStore方法Reduxprinciple02reduxprinciple-+//定义一个方法,用于集中管理state和dispatchconstcr</div>
                    </li>
                    <li><a href="/article/1892413431072485376.htm"
                           title="Redis主从复制" target="_blank">Redis主从复制</a>
                        <span class="text-muted">小松聊PHP进阶</span>
<a class="tag" taget="_blank" href="/search/Redis/1.htm">Redis</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/nosql/1.htm">nosql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a>
                        <div>主从复制官方文档:https://redis.io/docs/latest/operate/oss_and_stack/management/replication/极简概括:将一个主Redis服务器的数据复制到其它从Redis服务器的过程。角色:主节点(Master):负责处理客户端的写(或者读)请求,并将写操作同步到从节点。从节点(Slave):负责处理客户端的读请求,并将主节点发送过来的数据</div>
                    </li>
                    <li><a href="/article/1892410782809911296.htm"
                           title="RT-Thread I2C 驱动框架学习笔记" target="_blank">RT-Thread I2C 驱动框架学习笔记</a>
                        <span class="text-muted">DgHai</span>
<a class="tag" taget="_blank" href="/search/RT-Thread/1.htm">RT-Thread</a><a class="tag" taget="_blank" href="/search/mcu/1.htm">mcu</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">单片机</a>
                        <div>RT-ThreadI2C驱动框架(5.1.0)II2C驱动包括两大部分,I2C驱动总线驱动和I2C设备驱动。I2C总线驱动负责控制I2C总线的硬件,包括发送和接收数据的时序控制,以及处理总线冲突等。它与嵌入式系统的硬件层交互,实现对I2C总线的底层操作,使得应用程序可以通过I2C总线与外部设备进行通信。I2C设备驱动负责管理和控制连接在I2C总线上的具体外部设备。它与I2C总线驱动和嵌入式系统的驱</div>
                    </li>
                    <li><a href="/article/1892410151256780800.htm"
                           title="CCNP350-401学习笔记(351-400题)" target="_blank">CCNP350-401学习笔记(351-400题)</a>
                        <span class="text-muted">殊彦_sy</span>
<a class="tag" taget="_blank" href="/search/CCNP%E9%A2%98%E5%BA%93/1.htm">CCNP题库</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a>
                        <div>351、WhichnewenhancementwasimplementedinWi-Fi6?A.4096QuadratureAmplitudeModulationModeB.ChannelbondingC.Wi-FiProtectedAccess3D.UplinkandDownlinkOrthogonalFrequencyDivisionMultipleAccess352、HowdoesIGMPf</div>
                    </li>
                    <li><a href="/article/1892404601848655872.htm"
                           title="16、电科院FTU检测标准学习笔记-基本性能2" target="_blank">16、电科院FTU检测标准学习笔记-基本性能2</a>
                        <span class="text-muted">six2me</span>
<a class="tag" taget="_blank" href="/search/%E9%85%8D%E7%94%B5%E8%87%AA%E5%8A%A8%E5%8C%96%28FTU%29%E6%B5%8B%E8%AF%95%E7%AC%94%E8%AE%B0/1.htm">配电自动化(FTU)测试笔记</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/FTU/1.htm">FTU</a><a class="tag" taget="_blank" href="/search/%E9%85%8D%E7%94%B5%E6%A3%80%E6%B5%8B/1.htm">配电检测</a>
                        <div>作者简介:本人从事电力系统多年,岗位包含研发,测试,工程等,具有丰富的经验在配电自动化验收测试以及电科院测试中,本人全程参与,积累了不少现场的经验————————————————————————————————————目录交流工频电量影响量试验频率带来的影响谐波变化带来的影响不平衡电流对功率的影响三相功率测量元件之间相互作用引起的改变故障电流采集电流过载检测(大电流)状态量输出(遥控)输入SOE分</div>
                    </li>
                    <li><a href="/article/1892403846437728256.htm"
                           title="C语言流程控制学习笔记" target="_blank">C语言流程控制学习笔记</a>
                        <span class="text-muted">前端熊猫</span>
<a class="tag" taget="_blank" href="/search/C%E8%AF%AD%E8%A8%80/1.htm">C语言</a><a class="tag" taget="_blank" href="/search/c%E8%AF%AD%E8%A8%80/1.htm">c语言</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                        <div>1.顺序结构顺序结构是程序中最基本的控制结构,代码按从上到下的顺序依次执行。大多数C语言程序都是由顺序结构组成的。2.选择结构选择结构根据条件的真假来决定执行哪一段代码。在C语言中,选择结构主要有以下几种:2.1if语句if语句用于根据条件的真假来执行相应的代码块。if(condition){//当条件为真时执行的代码}2.2if-else语句if-else语句用于在条件为真时执行一段代码,为假时</div>
                    </li>
                    <li><a href="/article/1892386579293466624.htm"
                           title="03.Docker 命令帮助" target="_blank">03.Docker 命令帮助</a>
                        <span class="text-muted">转身後 默落</span>
<a class="tag" taget="_blank" href="/search/Docker/1.htm">Docker</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/eureka/1.htm">eureka</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>Docker命令帮助Docker命令帮助1.docker命令帮助2.docker优化Docker命令帮助docker命令是最常使用的docker客户端命令,其后面可以加不同的参数以实现不同的功能。1.docker命令帮助官方文档:https://docs.docker.com/reference/cli/docker/docker[OPTIONS]COMMANDCOMMAND分为:Manageme</div>
                    </li>
                    <li><a href="/article/1892359327935688704.htm"
                           title="DeepSeek使用中的问题及解决方案(部分)" target="_blank">DeepSeek使用中的问题及解决方案(部分)</a>
                        <span class="text-muted">WeiLai1112</span>
<a class="tag" taget="_blank" href="/search/DeepSeek/1.htm">DeepSeek</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>1.模型部署与配置问题问题1:环境依赖冲突现象:安装模型依赖库时出现版本不兼容(如Python、PyTorch版本冲突)。解决方案:使用虚拟环境(如conda或venv)隔离依赖。严格按照官方文档的版本要求安装依赖,例如:condacreate-ndeepseekpython=3.9condaactivatedeepseekpipinstalltorch==2.0.1transformers==4</div>
                    </li>
                    <li><a href="/article/1892301947768205312.htm"
                           title="江科大51单片机学习笔记(1)" target="_blank">江科大51单片机学习笔记(1)</a>
                        <span class="text-muted">悠闲漫步者</span>
<a class="tag" taget="_blank" href="/search/51%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">51单片机</a><a class="tag" taget="_blank" href="/search/51%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">51单片机</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                        <div>点亮一个LEDLED介绍中文名:发光二极管外文名:LightEmittingDiode简称:LED用途:照明、广告灯、指引灯、屏幕。如果想让LED发光,需要让发光二极管两端产生电位差。LED模块中串并联电阻是为了保护电路(限流)电阻的运算(上图电阻中所标注):102(1010^2=1000=1K)473(4710^3=47000=47K)1001(100*10^1=1000=1K)VCC:电源正极</div>
                    </li>
                    <li><a href="/article/1892267275638075392.htm"
                           title="electron学习笔记" target="_blank">electron学习笔记</a>
                        <span class="text-muted">weixin_46452138</span>
<a class="tag" taget="_blank" href="/search/electron/1.htm">electron</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a>
                        <div>electron个人学习笔记一、electron简单了解Electron是一个跨平台的、基于Web前端技术的桌面GUI应用程序开发框架。可以使用HTML、CSS来绘制界面和控制布局,使用JavaScript来控制用户行为和业务逻辑,使用Node.js来通信、处理音频视频等,几乎所有的Web前端技术和框架(jQuery、Vue、React、Angular等)都可以应用到桌面GUI开发中。二、开发前基</div>
                    </li>
                    <li><a href="/article/1892254409891573760.htm"
                           title="Python学习笔记 - Python数据类型" target="_blank">Python学习笔记 - Python数据类型</a>
                        <span class="text-muted">yunfan188</span>
<a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/Python%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/1.htm">Python学习笔记</a><a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/Python%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B/1.htm">Python数据类型</a>
                        <div>前言在Python语言中,所有的数据类型都是类,每一个变量都是类的“实例”。没有基本数据类型的概念,所以整数、浮点数和字符串也都是类。Python有6种标准数据类型:数字、字符串、列表、元组、集合和字典,而列表、元组、集合和字典可以保存多项数据,它们每一个都是一种数据结构,因此可以称这四种为“数据结构”类型。本文我们主要介绍数字和字符串类型。一、数字类型Python数字类型有4种:整数类型、浮点数</div>
                    </li>
                    <li><a href="/article/1892181126793981952.htm"
                           title="React学习笔记04" target="_blank">React学习笔记04</a>
                        <span class="text-muted">充气大锤</span>
<a class="tag" taget="_blank" href="/search/React%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/1.htm">React学习笔记</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a>
                        <div>一、理解组件通信组件通信就是组件间的数据传递,根据组件嵌套关系的不同,有不同的通信方法。在Vue中组件通信是我们组件间传递数据的一种最常用的方法,我们在Vue中使用props来实现父传子,用$emit实现子传父,在React中如何实现呢?1.1、父传子:1、父组件传递数据:在子组件标签身上绑定属性2、子组件接收数据:props的参数functionSon(props){return{props.n</div>
                    </li>
                    <li><a href="/article/1892163853509259264.htm"
                           title="SpringBoot配置加载顺序和SpringBoot分离打包:将jar包与lib依赖、配置文件分开" target="_blank">SpringBoot配置加载顺序和SpringBoot分离打包:将jar包与lib依赖、配置文件分开</a>
                        <span class="text-muted">小宝945</span>
<a class="tag" taget="_blank" href="/search/SpringBoot3.0/1.htm">SpringBoot3.0</a><a class="tag" taget="_blank" href="/search/%E4%BB%8E%E5%85%A5%E9%97%A8%E5%88%B0%E7%B2%BE%E9%80%9A/1.htm">从入门到精通</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/jar/1.htm">jar</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a>
                        <div>文章目录一、SpringBoot配置加载顺序1.SpringBoot配置优先级(1)命令行参数(2)配置文件二、SpringBoot分离打包:将jar包与lib依赖、配置文件分开1.pom文件配置2.打包后的目录结构一、SpringBoot配置加载顺序官方文档SpringBoot允许在代码之外,提供应用程序运行的数据,以便在不同的环境中使用相同的应用程序代码。避免硬编码,提供系统的灵活性。可使用各</div>
                    </li>
                    <li><a href="/article/1892107588196167680.htm"
                           title="Flutter‘s app_plugin_loader Gradle plugin imperatively using the apply script错误解决" target="_blank">Flutter‘s app_plugin_loader Gradle plugin imperatively using the apply script错误解决</a>
                        <span class="text-muted">江上清风山间明月</span>
<a class="tag" taget="_blank" href="/search/Flutter/1.htm">Flutter</a><a class="tag" taget="_blank" href="/search/flutter/1.htm">flutter</a><a class="tag" taget="_blank" href="/search/plugin_loader/1.htm">plugin_loader</a><a class="tag" taget="_blank" href="/search/Gradle/1.htm">Gradle</a><a class="tag" taget="_blank" href="/search/apply/1.htm">apply</a><a class="tag" taget="_blank" href="/search/plugin/1.htm">plugin</a>
                        <div>文章目录问题描述解决方法1.查看当前的`android/build.gradle`2.迁移到`plugins`声明式方法修改前:修改后:3.同步Flutter工具更新4.参考Flutter官方文档补充说明问题描述用Androidstudio开发flutter的andoridapk时编译报如下警告:YouareapplyingFlutter’sapp_plugin_loaderGradleplugi</div>
                    </li>
                    <li><a href="/article/1892066980731613184.htm"
                           title="Mac Java 使用 tesseract 进行 ORC 识别" target="_blank">Mac Java 使用 tesseract 进行 ORC 识别</a>
                        <span class="text-muted">nukix</span>
<a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ORC/1.htm">ORC</a>
                        <div>在Java开发中使用图片转文字时,难免会遇到问题,比如我使用Mac(M1芯片)系统进行开发,就出现报错。博主博客https://blog.uso6.comhttps://blog.csdn.net/dxk539687357一、直接使用1.使用brew进行安装brewinstalltesseract如果是其他系统的,建议看官方文档进行安装。2.查看版本nukix@nukixPC~%tesseract</div>
                    </li>
                    <li><a href="/article/1892051594862718976.htm"
                           title="Effective Java学习笔记" target="_blank">Effective Java学习笔记</a>
                        <span class="text-muted">lucky。</span>
<a class="tag" taget="_blank" href="/search/Java%E5%AD%A6%E4%B9%A0/1.htm">Java学习</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                        <div>静态工厂方法考虑使用静态工厂方法代替构造静态工厂方法与构造器不同的第一优势在于,它们有名字第二个优势,不用每次被调用时都创建新对象第三个优势,可以返回原返回类型的子类第四个优势,在创建带泛型的实例时,能使代码变得简洁(jdk1.8已经解决)除此之外可以有多个参数相同但名称不同的工厂方法可以减少对外暴露的属性多了一层控制,方便统一修改Java中,获得一个类实例最简单的方法就是使用new关键字,通过构</div>
                    </li>
                    <li><a href="/article/1892045289678761984.htm"
                           title="JavaWEB学习笔记2(自用,自整理)" target="_blank">JavaWEB学习笔记2(自用,自整理)</a>
                        <span class="text-muted">发际线码农</span>
<a class="tag" taget="_blank" href="/search/web/1.htm">web</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                        <div>笔记根据“尚硅谷”JavaWEB教学视频以及老师课后学习资料整理,若有错误以老师为准。笔记是博主一字一字亲手码出来的,由于自己还是学习阶段,本质还是在模仿的基础上加入自己的拙见。所以笔记会有很多地方和老师的资料有雷同,如有侵权,请大胆联系博主删除!!!因为自己的原因看到剩100集左右没有继续看下去,笔记存放时间有点久,有的图失效了,如果之后又时间博主尽量补上这个坑。JavaWEB学习笔记7、Ser</div>
                    </li>
                    <li><a href="/article/1892042512562974720.htm"
                           title="Mybatis-Plus学习笔记(自用)" target="_blank">Mybatis-Plus学习笔记(自用)</a>
                        <span class="text-muted">Zzzchc</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%EF%BC%88%E8%87%AA%E7%94%A8%EF%BC%89/1.htm">学习笔记(自用)</a><a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                        <div>Mybatis-Plus学习笔记(自用)本文根据黑马程序员的课程资料与百度搜索的资料共同整理所得,仅用于学习使用,如有侵权,请联系删除文章目录Mybatis-Plus学习笔记(自用)1.纯Mybatis与Mybatis-Plus整合2.Spring+Mybatis+MP3.SpringBoot+Mybatis+MP4.通用CRUD详解4.1注解详解4.2增删改查操作4.3SQL注入原理5.配置5.</div>
                    </li>
                    <li><a href="/article/1892037345557934080.htm"
                           title="MybaitsPlus学习笔记(三)常用注解" target="_blank">MybaitsPlus学习笔记(三)常用注解</a>
                        <span class="text-muted">画船听雨眠aa</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                        <div>目录一、@TableName问题:解决方法1通过@TableName解决问题解决方法2通过全局配置解决问题二、@TableId问题:解决方法1通过@TableId解决问题三、@TableField四、@TableLogic一、@TableName问题:MyBatis-Plus在确定操作的表时,由BaseMapper的泛型决定,即实体类型决定,且默认操作的表名和实体类型的类名一致。若实体类类型的类名</div>
                    </li>
                    <li><a href="/article/1892025755177644032.htm"
                           title="mysql升级到8.0.17_MySQL5.7升级到8.0过程详解" target="_blank">mysql升级到8.0.17_MySQL5.7升级到8.0过程详解</a>
                        <span class="text-muted">不就是输</span>
<a class="tag" taget="_blank" href="/search/mysql%E5%8D%87%E7%BA%A7%E5%88%B08.0.17/1.htm">mysql升级到8.0.17</a>
                        <div>前言:不知不觉,MySQL8.0已经发布好多个GA小版本了。目前互联网上也有很多关于MySQL8.0的内容了,MySQL8.0版本基本已到稳定期,相信很多小伙伴已经在接触8.0了。本篇文章主要介绍从5.7升级到8.0版本的过程及注意事项,有想做版本升级的小伙伴可以参考下。1.升级前准备及注意事项首先,我们要大概了解下MySQL5.7和8.0有哪些不同,参考官方文档和其他网友文章,概括总结出MySQ</div>
                    </li>
                    <li><a href="/article/1891982508489240576.htm"
                           title="【学习笔记】Python基础-字典Dict和Set和List与Str扩展" target="_blank">【学习笔记】Python基础-字典Dict和Set和List与Str扩展</a>
                        <span class="text-muted">法迪</span>
<a class="tag" taget="_blank" href="/search/Python%E5%9F%BA%E7%A1%80/1.htm">Python基础</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/hashmap/1.htm">hashmap</a><a class="tag" taget="_blank" href="/search/Dict/1.htm">Dict</a><a class="tag" taget="_blank" href="/search/set/1.htm">set</a><a class="tag" taget="_blank" href="/search/list/1.htm">list</a>
                        <div>Dict使用大括号围起来,这里提供一种键值对的list表示方法1.Dict{}2.List[]3.turple()实例代码#!/usr/bin/envpython3#-*-coding:utf-8-*-#字典dict类似Java的HashMap#Dict{}#List[]#turple()mDict={"Lava":90,"Huawei":100,"Sony":60}print(mDict['La</div>
                    </li>
                    <li><a href="/article/1891964977246433280.htm"
                           title="[学习笔记-SLAM篇]Ubuntu16.04+ROS下配置ORB-SLAM3——后续" target="_blank">[学习笔记-SLAM篇]Ubuntu16.04+ROS下配置ORB-SLAM3——后续</a>
                        <span class="text-muted">warningm_dm</span>
<a class="tag" taget="_blank" href="/search/SLAM%E7%AF%87/1.htm">SLAM篇</a>
                        <div>作为一篇后记,就主要做补充之用。索引1.编译不显示warning2.LocalMapping报错3.KannalaBrandt8报错4.RGB-D设置文件1.编译不显示warning编译的过程中有报错,但是一贯的,warning太多了,所以修改一下,便于找错。参考ubuntu18.04配置ORB-SLAM3。将ORB-SLAM3的CMakeLists.txt中的-Wall后面加上-w,可屏蔽编译的</div>
                    </li>
                    <li><a href="/article/1891955260721786880.htm"
                           title="EasyX学习笔记1:线条" target="_blank">EasyX学习笔记1:线条</a>
                        <span class="text-muted">ͨৡۚۨC++ۨۚ࿐๊</span>
<a class="tag" taget="_blank" href="/search/C%2B%2B%E6%B8%B8%E6%88%8F%E5%BC%80%E5%8F%91%E3%80%90EasyX%E3%80%91/1.htm">C++游戏开发【EasyX】</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a>
                        <div>目录一、线条颜色1.`setlinecolor`-设置当前线条颜色2.`getlinecolor`-获取当前线条颜色二、线条样式1.`setlinestyle`-设置线条样式(宽度、类型等)三、绘制线条1.`line`-绘制两点间直线2.`lineto`-从当前位置画线到指定点3.`linerel`-相对当前位置画线4.`polyline`-绘制多段线四、其他函数1.`getlinestyle`-</div>
                    </li>
                    <li><a href="/article/1891946061992357888.htm"
                           title="C#——垃圾回收(GC)" target="_blank">C#——垃圾回收(GC)</a>
                        <span class="text-muted">面向大象编程</span>
<a class="tag" taget="_blank" href="/search/C%23/1.htm">C#</a><a class="tag" taget="_blank" href="/search/c%23/1.htm">c#</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%BC%96%E7%A8%8B/1.htm">面向对象编程</a>
                        <div>文章目录前言一、垃圾回收是什么二、好处三、GC过程1.GC条件2.GC步骤3.Mark-Compact标记压缩算法4.Generational分代算法5.FinalizationQueue和FreachableQueue四、托管和非托管资源1.托管资源2.非托管资源五、GC注意事项参考前言C#的垃圾回收网上有很多博客进行讲解,这里摘录一部分较好的讲解,同时建议直接使用微软官方文档,万变不离其宗一、</div>
                    </li>
                    <li><a href="/article/1891897358174711808.htm"
                           title="Git 从入门到进阶 (只有干货,没有废话)" target="_blank">Git 从入门到进阶 (只有干货,没有废话)</a>
                        <span class="text-muted">2401_84153158</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a>
                        <div>《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!1.2.2已有的项目gitstash保存当前修改gitpull拉取远程最新代码与本地合并gitstashpop取出当前最新修改gitadd文件列表追踪文件gitcommit-m提交信息向仓库提交代码gitpushorigin分支名称推送至远程仓库具体的分支二、Git进阶操作=============</div>
                    </li>
                    <li><a href="/article/1891896722997702656.htm"
                           title="【Linux探索学习】第二十九弹——线程概念:Linux线程的基本概念与线程控制详解" target="_blank">【Linux探索学习】第二十九弹——线程概念:Linux线程的基本概念与线程控制详解</a>
                        <span class="text-muted">GG Bond.ฺ</span>
<a class="tag" taget="_blank" href="/search/Linux%E6%8E%A2%E7%B4%A2%E5%AD%A6%E4%B9%A0/1.htm">Linux探索学习</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>Linux学习笔记:https://blog.csdn.net/2301_80220607/category_12805278.html?spm=1001.2014.3001.5482前言:在现代操作系统中,线程是程序执行流的最小单元。与进程相比,线程更加轻量级,创建和销毁的开销更小,且线程之间可以共享内存空间,因此在多任务处理、并发编程中,线程的使用非常广泛。Linux作为一个多用户、多任务的操</div>
                    </li>
                    <li><a href="/article/1891892939907461120.htm"
                           title="用nodejs后端接收微信小程序上传的图片并转储" target="_blank">用nodejs后端接收微信小程序上传的图片并转储</a>
                        <span class="text-muted">芙老哥</span>
<a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">微信小程序</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a>
                        <div>记录一下毕设制作过程中遇到的问题和解决方法(1)需求:点击头像选择图片进行上传,图片存储到云服务器的images子目录下方法:wxml文件这个没什么好说的,就一个view组件加上点击事件就好(要是这都不会估计也不会直接搜我这个文章页面的js文件wx.chooseMedia的官方文档(wx.chooseMedia(Objectobject)|微信开放文档(qq.com)wx.uploadFile的官</div>
                    </li>
                    <li><a href="/article/1891878279909011456.htm"
                           title="C语言学习记录(4)青年歌手大奖赛_评委会打分" target="_blank">C语言学习记录(4)青年歌手大奖赛_评委会打分</a>
                        <span class="text-muted">舌尖上的五香</span>
<a class="tag" taget="_blank" href="/search/C%E8%AF%AD%E8%A8%80/1.htm">C语言</a>
                        <div>C语言学习记录前言一直自己没有学习做笔记的习惯,所以为了加强自己对知识的深入理解,决定将学习笔记写下来,希望向各位大牛们学习交流!不当之处请斧正!在此感谢!这边就先从学习C语言写起,自己本身对程序语言方面不擅长,所以决定对此从基础开始学习,大牛们对此文可以忽略!学校的OJ上的题青年歌手大奖赛_评委会打分题目描述青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计</div>
                    </li>
                                <li><a href="/article/36.htm"
                                       title="ASM系列四 利用Method 组件动态注入方法逻辑" target="_blank">ASM系列四 利用Method 组件动态注入方法逻辑</a>
                                    <span class="text-muted">lijingyao8206</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%97%E8%8A%82%E7%A0%81%E6%8A%80%E6%9C%AF/1.htm">字节码技术</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a><a class="tag" taget="_blank" href="/search/%E5%8A%A8%E6%80%81%E4%BB%A3%E7%90%86/1.htm">动态代理</a><a class="tag" taget="_blank" href="/search/ASM/1.htm">ASM</a>
                                    <div>        这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以</div>
                                </li>
                                <li><a href="/article/163.htm"
                                       title="java编程思想 --内部类" target="_blank">java编程思想 --内部类</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%86%85%E9%83%A8%E7%B1%BB/1.htm">内部类</a><a class="tag" taget="_blank" href="/search/%E5%8C%BF%E5%90%8D%E5%86%85%E9%83%A8%E7%B1%BB/1.htm">匿名内部类</a>
                                    <div>内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅 
  
1,内部类的创建  内部类是创建在类中的 
 
package com.wj.InsideClass;

/*
 * 内部类的创建
 */
public class CreateInsideClass {

	public CreateInsideClass(</div>
                                </li>
                                <li><a href="/article/290.htm"
                                       title="web.xml报错" target="_blank">web.xml报错</a>
                                    <span class="text-muted">crabdave</span>
<a class="tag" taget="_blank" href="/search/web.xml/1.htm">web.xml</a>
                                    <div>web.xml报错 
  
The content of element type "web-app" must match "(icon?,display- 
 name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s</div>
                                </li>
                                <li><a href="/article/417.htm"
                                       title="泛型类的自定义" target="_blank">泛型类的自定义</a>
                                    <span class="text-muted">麦田的设计者</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E6%B3%9B%E5%9E%8B/1.htm">泛型</a>
                                    <div>   为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。 
采用泛型类,完成扩展。 
  例如有一个学生类 
    
Student{
  Student(){
   System.out.println("I'm a student.....");
  }
} 
 有一个老师类 
  
</div>
                                </li>
                                <li><a href="/article/544.htm"
                                       title="CSS清除浮动的4中方法" target="_blank">CSS清除浮动的4中方法</a>
                                    <span class="text-muted">IT独行者</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/UI/1.htm">UI</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a>
                                    <div>清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。 
1、结尾处加空div标签 clear:both      1   2   3   4      
.div 
1 
{ 
background 
: 
#000080 
; 
border 
: 
1px   
s</div>
                                </li>
                                <li><a href="/article/671.htm"
                                       title="Cygwin使用windows的jdk 配置方法" target="_blank">Cygwin使用windows的jdk 配置方法</a>
                                    <span class="text-muted">_wy_</span>
<a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/cygwin/1.htm">cygwin</a>
                                    <div>1.[vim /etc/profile] 
   JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43"  (windows下jdk路径为D:\Java\jdk1.6.0_43) 
   PATH="$JAVA_HOME/bin:${PATH}" 
   CLAS</div>
                                </li>
                                <li><a href="/article/798.htm"
                                       title="linux下安装maven" target="_blank">linux下安装maven</a>
                                    <span class="text-muted">无量</span>
<a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E8%A3%85/1.htm">安装</a>
                                    <div>Linux下安装maven(转)  1.首先到Maven官网 
下载安装文件,目前最新版本为3.0.3,下载文件为 
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令; 
 
2.进入下载文件夹,找到下载的文件,运行如下命令解压 
  tar -xvf  apache-maven-2.2.1-bin.tar.gz  
解压后的文件夹</div>
                                </li>
                                <li><a href="/article/925.htm"
                                       title="tomcat的https 配置,syslog-ng配置" target="_blank">tomcat的https 配置,syslog-ng配置</a>
                                    <span class="text-muted">aichenglong</span>
<a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a><a class="tag" taget="_blank" href="/search/http%E8%B7%B3%E8%BD%AC%E5%88%B0https/1.htm">http跳转到https</a><a class="tag" taget="_blank" href="/search/syslong-ng%E9%85%8D%E7%BD%AE/1.htm">syslong-ng配置</a><a class="tag" taget="_blank" href="/search/syslog%E9%85%8D%E7%BD%AE/1.htm">syslog配置</a>
                                    <div>1) tomcat配置https,以及http自动跳转到https的配置 
    1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令) 
     keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit</div>
                                </li>
                                <li><a href="/article/1052.htm"
                                       title="关于领号活动总结" target="_blank">关于领号活动总结</a>
                                    <span class="text-muted">alafqq</span>
<a class="tag" taget="_blank" href="/search/%E6%B4%BB%E5%8A%A8/1.htm">活动</a>
                                    <div>关于某彩票活动的总结 
具体需求,每个用户进活动页面,领取一个号码,1000中的一个; 
活动要求 
1,随机性,一定要有随机性; 
2,最少中奖概率,如果注数为3200注,则最多中4注 
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高); 
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库) 
 
解决方案 
1,事先产生随机数1000个,并打</div>
                                </li>
                                <li><a href="/article/1179.htm"
                                       title="java数据结构 冒泡排序的遍历与排序" target="_blank">java数据结构 冒泡排序的遍历与排序</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>java的冒泡排序是一种简单的排序规则 
  
冒泡排序的原理:  
         比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样; 
        针对所有的元素重复以上的步骤,除了最后一个 
  
  
例题;将int array[] </div>
                                </li>
                                <li><a href="/article/1306.htm"
                                       title="JS检查输入框输入的是否是数字的一种校验方法" target="_blank">JS检查输入框输入的是否是数字的一种校验方法</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/js/1.htm">js</a>
                                    <div>如下是JS检查输入框输入的是否是数字的一种校验方法: 
<form method=post target="_blank">
   数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
</div>
                                </li>
                                <li><a href="/article/1433.htm"
                                       title="Test注解的两个属性:expected和timeout" target="_blank">Test注解的两个属性:expected和timeout</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/JUnit/1.htm">JUnit</a><a class="tag" taget="_blank" href="/search/expected/1.htm">expected</a><a class="tag" taget="_blank" href="/search/timeout/1.htm">timeout</a>
                                    <div>JUnit4:Test文档中的解释: 
  The Test annotation supports two optional parameters. 
  The first, expected, declares that a test method should throw an exception. 
  If it doesn't throw an exception or if it </div>
                                </li>
                                <li><a href="/article/1560.htm"
                                       title="[Gson二]继承关系的POJO的反序列化" target="_blank">[Gson二]继承关系的POJO的反序列化</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/POJO/1.htm">POJO</a>
                                    <div>父类 
  
  
package inheritance.test2;

import java.util.Map;

public class Model {
    private String field1;
    private String field2;

    private Map<String, String> infoMap</div>
                                </li>
                                <li><a href="/article/1687.htm"
                                       title="【Spark八十四】Spark零碎知识点记录" target="_blank">【Spark八十四】Spark零碎知识点记录</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/spark/1.htm">spark</a>
                                    <div>1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的 
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中 
  
   </div>
                                </li>
                                <li><a href="/article/1814.htm"
                                       title="WAS各种脚本作用大全" target="_blank">WAS各种脚本作用大全</a>
                                    <span class="text-muted">ronin47</span>
<a class="tag" taget="_blank" href="/search/WAS+%E8%84%9A%E6%9C%AC/1.htm">WAS 脚本</a>
                                    <div>   http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html 
   无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下 
    
获取下载 
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自</div>
                                </li>
                                <li><a href="/article/1941.htm"
                                       title="java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句" target="_blank">java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/switch/1.htm">switch</a>
                                    <div>借鉴网上的思路,用java实现: 
 




public class NoIfWhile {

	/**
	 * @param args
	 * 
	 * find x=1+2+3+....n
	 */
	public static void main(String[] args) {
		int n=10;
		int re=find(n);
		System.o</div>
                                </li>
                                <li><a href="/article/2068.htm"
                                       title="Netty源码学习-ObjectEncoder和ObjectDecoder" target="_blank">Netty源码学习-ObjectEncoder和ObjectDecoder</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a>
                                    <div>Netty中传递对象的思路很直观: 
Netty中数据的传递是基于ChannelBuffer(也就是byte[]); 
那把对象序列化为字节流,就可以在Netty中传递对象了 
相应的从ChannelBuffer恢复对象,就是反序列化的过程 
 
Netty已经封装好ObjectEncoder和ObjectDecoder 
 
先看ObjectEncoder 
ObjectEncoder是往外发送</div>
                                </li>
                                <li><a href="/article/2195.htm"
                                       title="spring 定时任务中cronExpression表达式含义" target="_blank">spring 定时任务中cronExpression表达式含义</a>
                                    <span class="text-muted">chicony</span>
<a class="tag" taget="_blank" href="/search/cronExpression/1.htm">cronExpression</a>
                                    <div>一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示: 
代表含义            是否必须 允许的取值范围         &nb</div>
                                </li>
                                <li><a href="/article/2322.htm"
                                       title="Nutz配置Jndi" target="_blank">Nutz配置Jndi</a>
                                    <span class="text-muted">ctrain</span>
<a class="tag" taget="_blank" href="/search/JNDI/1.htm">JNDI</a>
                                    <div>1、使用JNDI获取指定资源: 
 

var ioc = {
    dao : {
        type :"org.nutz.dao.impl.NutDao",
        args : [ {jndi :"jdbc/dataSource"} ]
    }
}
 
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可. </div>
                                </li>
                                <li><a href="/article/2449.htm"
                                       title="解决 /bin/sh^M: bad interpreter: No such file or directory" target="_blank">解决 /bin/sh^M: bad interpreter: No such file or directory</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/shell/1.htm">shell</a>
                                    <div>在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。 
  
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。 
解决: 
1)在windows下转换: 
利用一些编辑器如UltraEdit或EditPlus等工具</div>
                                </li>
                                <li><a href="/article/2576.htm"
                                       title="[转]for 循环为何可恨?" target="_blank">[转]for 循环为何可恨?</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/%E8%AF%BB%E4%B9%A6/1.htm">读书</a>
                                    <div>  
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。 
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju</div>
                                </li>
                                <li><a href="/article/2703.htm"
                                       title="Android实用小技巧" target="_blank">Android实用小技巧</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>1、去掉所有Activity界面的标题栏 
  修改AndroidManifest.xml   在application 标签中添加android:theme="@android:style/Theme.NoTitleBar" 
  
2、去掉所有Activity界面的TitleBar 和StatusBar  
  修改AndroidManifes</div>
                                </li>
                                <li><a href="/article/2830.htm"
                                       title="Oracle 复习笔记之序列" target="_blank">Oracle 复习笔记之序列</a>
                                    <span class="text-muted">eksliang</span>
<a class="tag" taget="_blank" href="/search/Oracle+%E5%BA%8F%E5%88%97/1.htm">Oracle 序列</a><a class="tag" taget="_blank" href="/search/sequence/1.htm">sequence</a><a class="tag" taget="_blank" href="/search/Oracle+sequence/1.htm">Oracle sequence</a>
                                    <div>转载请出自出处:http://eksliang.iteye.com/blog/2098859 
1.序列的作用 
 
 序列是用于生成唯一、连续序号的对象 
 一般用序列来充当数据库表的主键值 
 
2.创建序列语法如下: 
  
create sequence s_emp
start with 1      --开始值
increment by 1    --増长值
maxval</div>
                                </li>
                                <li><a href="/article/2957.htm"
                                       title="有“品”的程序员" target="_blank">有“品”的程序员</a>
                                    <span class="text-muted">gongmeitao</span>
<a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a>
                                    <div>完美程序员的10种品质   
  
 完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的 
  
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质: 
  1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强 
  
(范围:用简单方式解决复杂问题)   
 </div>
                                </li>
                                <li><a href="/article/3084.htm"
                                       title="使用KeleyiSQLHelper类进行分页查询" target="_blank">使用KeleyiSQLHelper类进行分页查询</a>
                                    <span class="text-muted">hvt</span>
<a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a><a class="tag" taget="_blank" href="/search/C%23/1.htm">C#</a><a class="tag" taget="_blank" href="/search/asp.net/1.htm">asp.net</a><a class="tag" taget="_blank" href="/search/hovertree/1.htm">hovertree</a>
                                    <div>本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D</div>
                                </li>
                                <li><a href="/article/3211.htm"
                                       title="SVG 教程 (三)圆形,椭圆,直线" target="_blank">SVG 教程 (三)圆形,椭圆,直线</a>
                                    <span class="text-muted">天梯梦</span>
<a class="tag" taget="_blank" href="/search/svg/1.htm">svg</a>
                                    <div>SVG <circle>   SVG 圆形 - <circle> 
<circle> 标签可用来创建一个圆: 
下面是SVG代码: 
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <circle cx="100" c</div>
                                </li>
                                <li><a href="/article/3338.htm"
                                       title="链表栈" target="_blank">链表栈</a>
                                    <span class="text-muted">luyulong</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a>
                                    <div>
public class Node {
	private Object object;
	private Node next;

	public Node() {
		this.next = null;
		this.object = null;
	}

	public Object getObject() {
		return object;
	}

	public</div>
                                </li>
                                <li><a href="/article/3465.htm"
                                       title="基础数据结构和算法十:2-3 search tree" target="_blank">基础数据结构和算法十:2-3 search tree</a>
                                    <span class="text-muted">sunwinner</span>
<a class="tag" taget="_blank" href="/search/Algorithm/1.htm">Algorithm</a><a class="tag" taget="_blank" href="/search/2-3+search+tree/1.htm">2-3 search tree</a>
                                    <div>  
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga</div>
                                </li>
                                <li><a href="/article/3592.htm"
                                       title="spring配置定时任务" target="_blank">spring配置定时任务</a>
                                    <span class="text-muted">stunizhengjia</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/timer/1.htm">timer</a>
                                    <div>最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到: 
  
  
//------------------------定时任务调用的方法------------------------------
    /**
     * 存储过程定时器
    */
    publi</div>
                                </li>
                                <li><a href="/article/3719.htm"
                                       title="ITeye 8月技术图书有奖试读获奖名单公布" target="_blank">ITeye 8月技术图书有奖试读获奖名单公布</a>
                                    <span class="text-muted">ITeye管理员</span>
<a class="tag" taget="_blank" href="/search/%E6%B4%BB%E5%8A%A8/1.htm">活动</a>
                                    <div>ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。 
 
 
8月试读活动回顾: 
http://webmaster.iteye.com/blog/2102830 
 
 
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀): 
 
 
《跨终端Web》 
 
 
 
 gleams:http</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>