Hexo
未读前言如果你有给文章加密的需求,可以通过一个插件来实现这个功能 —— hexo-blog-encrypt
配置方法1.打开Hexo博客根目录,在根目录下执行下面的命令
1npm install --save hexo-blog-encrypt
其实只下载这个插件就可以直接使用了,接下来就是使用的方法了
使用方法1.可以通过tags针对一类文章进行加密
在配置文件[BlogRoot]\_config.yml中添加下面的代码
12345678910# Securityencrypt: # hexo-blog-encrypt abstract: 有东西被加密了, 请输入密码查看. message: 您好, 这里需要密码. tags: - {name: tagName, password: 密码A} - {name: tagName, password: 密码B} theme: xray wrong_pass_message: 抱歉, 这个密码看着不太对, 请再试试. wrong_hash_message: 抱歉, 这个文章不能被校验, ...
Hexo
未读全面常用 Markdown 速查表本速查表涵盖日常写作、笔记、文档编辑中高频使用的语法,包含基础格式、进阶排版、特殊元素等类别,每个语法均附「语法示例」和「效果展示」,方便直接复制使用。
由于我刚开始使用Markdown 并且又有些健忘,特此用AI整理了以下总结 方便后续使用查找
一、标题(6 级)通过 # 数量区分级别,# 后加空格(规范写法),支持 1-6 级标题,级别越高字体越小。
语法示例
效果展示
说明
# 一级标题
# 一级标题
常用作文档大标题,字体最大
## 二级标题
## 二级标题
常用作章节标题
### 三级标题
### 三级标题
常用作小节标题
#### 四级标题
#### 四级标题
层级更细的子标题
##### 五级标题
##### 五级标题
字体较小,适合细节分类
###### 六级标题
###### 六级标题
最小级别标题,慎用
二、文本样式(加粗 / 斜体 / 删除线等)用于突出或修饰文本,支持多种组合样式,满足不同强调需求。
语法示例
效果展示
说明
**加粗文本**
加粗文本
最 ...
前言Hexo默认的永久链接格式层级比较复杂,深度太大不利于 SEO,而且默认链接的格式是根据日期定义,一旦我们修改文章的日期,那么链接就会改变。
[^SEO]: 全称为 Search Engine Optimization(搜索引擎优化),是通过优化网站结构、内容、链接等要素,提升网站在搜索引擎自然搜索结果中排名的技术。对于博客而言,合理的链接结构(如层级浅、包含关键词)能帮助搜索引擎更高效地抓取和理解页面内容,从而提升文章的曝光度。
这将会造成
最直接的后果:原链接失效,出现 404 错误
间接影响:搜索引擎收录与博客权重受损
修改文章日期 = 破坏链接永久性,会直接导致 404 错误和搜索引擎收录问题。
优化方法优化方法有很多种,这里我只写一种优化方法hexo-abbrlink,也是最方便最推荐的方法。
利用hexo-abbrlink插件可以将Hexo生成的永久链接转化为一个随机值
核心优势:链接不依赖文章日期、标题,修改这些信息后哈希值不变,永久链接始终有效,避免 404 和 SEO 权重丢失。
对比维度
Hexo 默认永久链接
hexo-abbrlin ...
Java String 常用方法总结基于提供的代码,整理出以下常用的 String 类方法及功能:
1. 字符串替换
replace(CharSequence target, CharSequence replacement)
替换所有匹配的子字符串(非正则匹配)
示例:str.replace("东风", "刘海柱")
replaceAll(String regex, String replacement)
支持正则表达式替换,替换所有匹配的子串
示例:
替换字母:replaceAll("[a-zA-Z]", "@")
替换手机号:replaceAll("1\\d{10}", "----替换内容----")
去除空格:replaceAll("\\s", "")
2. 字符串分割
split(String regex)
按正则表达式分割字符串,返回字符串数组
注意:特殊字符(如., |)需要 ...
Java String 对象创建与内存分配笔记一、核心概念:字符串常量池(Constant Pool)
作用:存储字符串常量(如"abc"),实现对象共享,避免重复创建相同内容的字符串,节省内存
加载时机:类加载时,字符串常量会被自动读取并放入常量池
核心规则:常量池中相同内容的字符串仅存在 1 个,后续使用相同常量时直接复用,不新建
二、String 对象创建的两种方式及内存分析方式 1:直接赋值(String s = "abc")
内存过程:
检查常量池:若不存在"abc",则在常量池创建 1 个"abc"对象
若常量池已存在"abc",则直接让变量s指向常量池中的该对象
对象数量:仅在首次赋值时创建 1 个(常量池),后续赋值不新建对象
方式 2:new关键字创建(String s = new String("abc"))
内存过程(分首次和后续):
首次执行(常量池无"abc"):
先在常量池创建 1 个"abc" ...
在 Java 中,Date、LocalDate以及它们对应的格式化类(SimpleDateFormat、DateTimeFormatter)是处理日期时间的重要工具,它们在设计和使用上有显著区别。以下是总结:
1. Date 类(java.util.Date)
特点:
是 Java 早期的日期时间类,包含日期和时间信息(精确到毫秒)。
线程不安全,不推荐在多线程环境中使用。
设计存在缺陷,许多方法(如getYear()、getMonth())已过时。
时区处理不够直观,默认依赖系统时区。
对应的格式化类:SimpleDateFormat
用于Date与字符串之间的转换。
Pattern 示例:
yyyy-MM-dd:年 - 月 - 日(如2023-10-05)
yyyy-MM-dd HH:mm:ss:年 - 月 - 日 时:分: 秒(如2023-10-05 14:30:25)
MM/dd/yyyy:月 / 日 / 年(如10/05/2023)
示例代码:
java
1234Date date = new Date();SimpleDateFo ...
String 类的核心特性说明一、接口与修饰符实现
final 修饰
String 类被final关键字修饰,意味着它不能被继承,所有方法无法被重写,保证了类行为的稳定性。
序列化支持
实现Serializable接口(空接口),表示 String 对象可被序列化,支持网络传输或持久化存储。
比较与排序能力
实现Comparable<String>接口,可通过compareTo()方法进行字符串比较,支持自然排序。
字符串基础操作定义
实现CharSequence接口,规定了字符串必须实现的核心方法,包括:
length():返回长度
toString():返回字符串本身
charAt(int index):获取指定位置字符等
JDK 12 + 新增接口
实现Constable和ConstantDesc接口,支持在常量表达式中使用字符串,增强编译期常量处理能力。
二、内部数据结构
JDK 8 及之前:底层使用private final char[] value存储字符(每个字符占 2 字节)。
JDK 9 及之后:优化为private final ...
常用的几个类
Date //util包的
SimpleDateFormat //text包下的
calendar // util包下的
2、Date日期格式化可用的字符说明
yyyy 年
MM 月
dd 日
hh 1~12小时制 (1-12)
HH 24小时制
mm 分
ss 秒
S 毫秒
E 星期几
D 一年中的第几天
F 一个月中的第几个星期(会把这个月总共过的天数除以7)
w 一年中的第几个星期
W一月中的第几个星期
a 上下午表示
k 和HH差不多 表示一天24小时制
K 和hh差不多 表示一天12小时制
z 表示时区
2、JDK1.8(JDK8)关于日期的处理JDK8引入了一套关于日期处理的API 位于java.time包下 这个包下的类都是不可变且线程安全的
1. Instant 代表时间戳
2. LocalDate 代表日期 不包含时间的 2020-02-02
3. LocalTime 代表时间 比如 时分秒 但是 不包含年月日
4. LocalDataTime 包含日 ...
关键点:
1. 要实现Cloneable 哪怕他是一个空接口
2. 自己定义一个克隆用的方法 且在方法内部 调用 super.clone()
示例代码:
123456789101112131415161718192021222324252627282930313233public class test11 { public static void main(String[] args) { Sheep s1 = new Sheep(1, "小羊"); Sheep s2 = s1.clone(); s2.age = 2; s2.name = "大羊"; s1.speak(); s2.speak(); } } class Sheep implements Cloneable { int age; String name; public She ...
1. 他不能被继承
2. 他是java.long包 自带的
3. 构造方法私有化
我们之前用过以下的三种东西
System.out 标准输出流
System.in 标准输入流
System.err 错误输出流
常用的方法public static native void arraycopy(Object src,int srcPro,Object dest, int length) 数组扩容
public static native long currentTimeMillis()
public static native long nanoTime() 获取时间 以纳秒的形式返回
public void gc() 垃圾回收期
Map<String,String> getnev() 得到当前环境变量的相关的配置





