Butterfly代码块高亮踩坑
Butterfly代码块高亮踩坑问题描述代码块没有高亮,没有复制按钮,看起来简直就像是文本
解决路线官方文档 - 代码高亮
issue 指路,也许有你需要的解答
首先查看hexo版本1heox --version
hexo: 7.2.0hexo-cli: 4.3.2os: win32 10.0.22631 undefinednode: 18.16.0acorn: 8.8.2ada: 1.0.4ares: 1.19.0brotli: 1.0.9cldr: 42.0icu: 72.1llhttp: 6.0.10modules: 108napi: 8nghttp2: 1.52.0nghttp3: 0.7.0ngtcp2: 0.8.1openssl: 3.0.8+quicsimdutf: 3.2.2tz: 2022gundici: 5.21.0unicode: 15.0uv: 1.44.2uvwasi: 0.0.15v8: 10.2.154.26-node.26zlib: 1.2.13
修改 hexo 的 _config.yml 配置
注意,是hexo的,不是主题的
如果是 7.0.0 ...
如何使用图标库
如何使用图标库来美化 .yml 文件的 icon
在 Font Awesome 官方网站 上查看所有可用的图标和它们的分类 ([Font Awesome](https://fontawesome.com/#:~:text=URL%3A https%3A%2F%2Ffontawesome.com%2F Visible%3A 0% )) (Font Awesome Docs)
Step 1. 找到图标库对应的 Code Snippet
Step 2. 找到你想要添加图标的位置,添加“图标分类 Code Snippet”Font Awesome的图标分类主要包括:
fas(Font Awesome Solid):实心图标。
far(Font Awesome Regular):常规图标(通常是空心的)。
fal(Font Awesome Light):轻量图标。
fab(Font Awesome Brands):品牌图标。
示例1fab fa-solid fa-x
END
Butterfly主题页脚添加ICP备案信息
Butterfly主题页脚添加ICP备案信息方案一Step 1. 找到页脚布局文件 footer.pug
Step 2. 添加备案号
方案二在 _config.butterfly.yml 的 footer.custom_text 中放入 Step 2 的 html 代码
END
BeanUtils.copyProperties(source, target)
BeanUtils.copyProperties(source, target);功能概述
源对象和目标对象:copyProperties() 方法需要两个参数,一个是源对象(source),另一个是目标对象(target)。方法会尝试将源对象的属性值复制到目标对象中的对应属性。
属性名称和类型:复制过程中,只有当源对象和目标对象中具有相同名称和兼容类型的属性时,属性值才会被复制。
深拷贝与浅拷贝:默认情况下,copyProperties() 执行的是浅拷贝,即如果属性是引用类型,则复制的是引用而不是对象本身。
注意事项
异常处理:copyProperties() 方法声明了抛出 IllegalAccessException 和 InvocationTargetException。这要求调用时必须进行异常处理。
数据类型兼容性:当源对象和目标对象的同名属性类型不完全一致时(例如,一个是 Long 另一个是 Integer),复制可能不会执行,或者需要额外的处理。
数据类型兼容性处理
Spring 的 BeanUtils.copyProperties() 方法在执行属性复制时,主要 ...
MySQL 重置密码
MySQL重置密码Step 1:停止 MySQL 服务:首先,确保 MySQL 服务已经停止。如果 MySQL 服务正在运行,可以使用以下命令停止它:
1sudo systemctl stop mysql
Step 2:以跳过授权表启动 MySQL:在 Ubuntu 上,可以通过以下步骤以跳过授权表的方式启动 MySQL 服务,从而可以修改 root 密码:
1sudo mysqld_safe --skip-grant-tables --skip-networking &
--skip-grant-tables:跳过授权表,允许不需要密码即可登录 MySQL。
--skip-networking:跳过网络连接,仅允许本地连接。
Step 3:登录到 MySQL:在跳过授权表的模式下,可以直接登录到 MySQL 服务器,而不需要密码:
1mysql -u root
Step 4:修改 root 密码:登录到 MySQL 后,使用以下 SQL 命令修改 root 用户的密码。将 new_password 替换为你要设置的新密码:
123USE mysql;UPDATE u ...
Ubuntu MySQL 安装教程
Ubuntu 服务器安装 MySQLStep 1:更新包管理器:在安装任何新软件之前,建议先更新系统的包管理器 apt,以确保安装的软件版本是最新的:
1sudo apt update
Step 2:安装 MySQL 服务器:使用以下命令安装 MySQL 服务器:
1sudo apt install mysql-server
在安装过程中,系统会提示你设置 MySQL 的 root 用户密码。请设置一个安全且记得住的密码,并确认。
Step 3:启动 MySQL 服务:安装完成后,MySQL 服务会自动启动。你可以使用以下命令检查 MySQL 服务的运行状态:
1sudo systemctl status mysql
如果 MySQL 未启动,可以使用以下命令手动启动它:
1sudo systemctl start mysql
Step 4:配置 MySQL(可选):在默认情况下,MySQL 的安全配置脚本已经在安装时运行,可以使用以下命令再次运行该脚本:
1sudo mysql_secure_installation
这个脚本将引导你完成一些基本的安全设置,包括移除测试数据 ...
Docker拉取镜像失败的解决方法
Docker 拉取镜像失败的解决方法报错信息1download failed after attempts=6: dial tcp 104.18.125.25:443: i/o timeout
Step 1:写入镜像配置Step 1.1:创建目录1sudo mkdir -p /etc/docker
Step 1.2:写入镜像配置12345678910sudo tee /etc/docker/daemon.json <<-'EOF'{ "registry-mirrors": [ "https://docker.m.daocloud.io", "https://dockerproxy.com", "https://docker.mirrors.ustc.edu.cn", "https://docker.nju.edu.cn" ]}EOF
Step 2:重启 Docke ...
MySQL 设置 create_time/update_time 自动更新
MySQL在 MySQL 中,可以使用 CURRENT_TIMESTAMP 函数来获取当前时间戳,其特性包括:
插入时自动更新:通过在表定义中设置默认值为 CURRENT_TIMESTAMP,可以在插入新记录时自动填充当前时间戳。
1234CREATE TABLE example_table ( id INT AUTO_INCREMENT PRIMARY KEY, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
更新时自动更新:使用 ON UPDATE CURRENT_TIMESTAMP 在字段定义中,可以在更新记录时更新时间戳。
1234CREATE TABLE example_table ( id INT AUTO_INCREMENT PRIMARY KEY, updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP);
MyBatis 占位符与字符串替换 详解
MyBatis ‘#’ 和 ‘$’ 详解
MyBatis 是一个开源的持久层框架,用于简化数据库操作,它提供了多种方式来执行 SQL 查询,支持动态 SQL、映射器接口和注解等特性。在 MyBatis 中,# 和 $ 符号在 SQL 查询中有不同的作用和用法。
# 和 $ 的区别
# 符号
作用:# 符号表示预编译处理(PreparedStatement),会将参数按照 JDBC 类型安全地进行替换,即使用占位符 ? 来表示参数值。
安全性:使用 # 可以防止 SQL 注入攻击,因为参数值会被自动转义,使得输入的参数无法改变 SQL 的语义。
适用情况:推荐用于传递参数值,如 WHERE 子句、INSERT 或 UPDATE 的列值等。
示例:
1SELECT * FROM users WHERE id = #{userId}
这里 #{userId} 将会被替换为安全的预编译参数。
$ 符号
作用:$ 符号直接将参数值拼接进 SQL 语句中,可以理解为字符串替换,不会进行预编译处理。
灵活性:由于直接替换参数值,可以用于动 ...
Docker + Umami 使用教程
Docker + Umami 使用教程前置条件
安装 MySQL,MySQL 安装教程
安装 Docker,Docker 安装教程
Step 1:在服务器上,创建一个docker-compose.yml1vim docker-compose.yml
Step 2:在该文件中添加如下内容123456789101112version: '3'services: umami: image: ghcr.io/mikecao/umami:mysql-latest network_mode: "host" environment: DATABASE_URL: mysql://username:password@localhost:3306/databasename DATABASE_TYPE: mysql HASH_SALT: replace-me-with-a-random-string restart: always container_name: umami
username ...
