自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

asing1elife's blog

life is simple, just coding.

  • 博客(430)
  • 收藏
  • 关注

原创 Vue 集成 PDF.js 实现 PDF 预览和添加水印

在 Vue 中集成 Mozilla/PDF.js ,实现自定义的 PDF 预览器,以及给被预览的 PDF 添加水印实现效果可用插件介绍Mozilla 提供了 PDF.js 和 pdfjs-dist ,两者的区别如下:* PDF.js ,一个完整的 PDF 查看器,可以直接使用其提供的 viewer.html 查看 PDF 内容,包含完整样式和相关功能。优点是快速集成,不需要自己实现查看器的功能和样式。缺点是如果要自定义样式和功能,反而会很麻烦。* pdfjs-dist ,PDF.js 的预购.

2021-01-21 17:50:13 5181 5

原创 CKEditor5 集成 Firebase Storage 实现图片上传

在 Vue3 中使用 TS 集成 CKEditor5 ,并通过 Firebase Storage 完成自定义图片上传。

2023-02-25 19:26:08 689

原创 Nuxt3 简单集成 GoogleMap

项目中需要做一个基于 GoogleMap 的地图显示,只需要显示一个地图,并在地图上标记一个地理位置即可。因为需求很简单,所以想直接通过 GoogleMap 官方的 JS API 来实现,并不想用一些二次开发的插件。

2022-09-29 12:13:46 1065 5

原创 Linux CentOS 安装 Sonarqube7.8 完全指北

介绍在 Linux CentOS 中如何成功安装 Sonarqube7.8 ,包括错误排查前置环境官方要求在 Sonarqube7.8的官方文档 中,有比较明确的说明该版本需要哪些环境。首先是 JDK,Oracle JDK 和 Open JDK 都可以,版本需要是 8 和 11 皆可,如下图:图中有提到 JDK8 在下个版本就不支持了,这里不要紧,我们没有升级需求。其次是数据库,在官方文档中没有说明支持 MySQL ,但其实 Sonarqube7.8 仍然支持 MySQL ,从配置文件中可.

2021-12-08 13:17:44 1474

原创 Linux 实现进程监控,并发送通知到钉钉

在 Linux 中设置监控服务进程的定时任务,如果触发满足条件,则调用钉钉的机器人通知接口,发送消息申请钉钉机器人该功能属于钉钉的自定义机器人功能,在 自定义机器人接入 - 钉钉开放平台 有具体接入描述,以下就介绍一些关键点。机器人的安全设置在安全设置中,自定义关键词 表示:发送的消息内容中,必须包含这些提前设置好的关键词,否则消息无法发出。IP 地址段 表示:只接收来自该 IP 的请求。本文是直接使用 Linux 的 curl 命令来实现消息发送,所以不需要勾选 加签 选项。点击完成后,.

2021-03-13 00:25:35 1869 2

原创 SpringBoot 集成 Swagger 快速实现项目接口文档

Swagger 是一款目前世界最流行的API管理工具官网World’s Most Popular API Framework | SwaggerSwagger Annotation集成步骤在项目 pom 中引入以下依赖。<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <ver.

2020-06-10 22:53:19 323

原创 Linux 命令行与 shell 脚本编程大全 19 初始 sed 和 gawk

介绍如何使用 sed 和 gawk ,这两个工具能够极大简化数据处理过程。更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览sed 编辑器可以在读取数据时对数据快递的进行各种处理操作,s 命令 可以替换文本,i 命令 可以插入文本,a 命令 可以追加文本,c 命令 可以修改文本,d 命令 可以删除文本,y 命令 可以转换文本,p 命令 可以打印文本,= 命令 可以打印行号,l 命令 可以打印 ASCII 字符,w 命令 可以输出内容到指定文件,r 命令 可以从指定.

2020-05-12 20:40:42 366

原创 Linux 命令行与 shell 脚本编程大全 18 图形化桌面环境中的脚本编程

本章主要讲解如何使用 Dialog 插件实现图形化的脚本编写,不是重点,所以不会详细介绍导览使用 echo -e 可以在输出内容中穿插制表符、换行符等特殊字符。使用 echo -n 可以移除输出字符末尾默认的换行符。使用 read -n 1 可以指定只接收用户输入的第一个字符,当检测到一个字符输入后,会直接触发回车操作。将 echo read case 命令结合后,可以输出简易的脚...

2020-04-30 17:12:25 719

原创 Linux 命令行与 shell 脚本编程大全 17 创建函数

介绍如何在 shell 脚本中创建函数,以及如何在 shell 脚本中使用这些函数更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览为了提高脚本中代码的重用性,可以将指定代码块封装为一个函数,然后在脚本中通过函数的名称对函数进行调用脚本函数可以用函数最后一条命令的退出状态码或 return 命令来返回指定数值,范围在 0-255 之间函数也可以使用...

2020-03-12 13:30:34 294

原创 Linux 命令行与 shell 脚本编程大全 16 控制脚本

介绍如何向脚本发送信号、修改脚本的优先级,以及在脚本运行时切换到运行模式更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览Linux 可以利用信号控制脚本,这在第 4 章中已经有介绍trap 命令可以在脚本中拦截 shell 发送到脚本的信号,并进行本地化操作可以在脚本的执行语句最后添加 & 符号,来实现脚本的后台运行但这种后台运行不是...

2020-03-03 14:18:53 334

原创 Linux 命令行与 shell 脚本编程大全 15 呈现数据

介绍如何将脚本的输出重定向到 Linux 的不同位置更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览脚本的输入、输出都可以从 STDIN( 标准输入 ) 、STDOUT( 标准输出 ) 重定向到任意文件中除了 STDOUT 作为标准输出,还有 STDERR 作为标准错误输出来区分脚本中的正常消息和错误消息shell 从 0 - 8 一共提供 9 ...

2020-03-01 21:35:45 358

原创 SpringBoot + Shiro 实现微博登录

介绍在服务端使用 SpringBoot + Shiro ,用户端使用 jQuery 的环境下如何实现网站对接微博登录更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线写在前面的话网站要接入第三方登录,首先考虑的自然是微博和微信以及 QQ接入之前需要在对应的开放平台去申请权限,微博的需要去 新浪微博开放平台登录后点击 立即接入 就可以开始创建应用了,创...

2020-02-11 22:27:13 614

原创 Linux 命令行与 shell 脚本编程大全 14 处理用户输入

介绍 shell 脚本如何接收用户的输入更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览运行脚本时可以往脚本中传入命令行参数,例如 ./param.sh 1 2 3shift 命令可以从右向左移动传入的参数位置,类似于迭代器,shift n 命令可以指定参数移动的位置数,默认为 1$# 可以在脚本中直接获取传入的参数总数,${!#} 可以在脚本中...

2020-01-20 21:58:41 977

原创 Vue 项目从 Vue CLI 2 升级到 Vue CLI 4

介绍如何将使用 Vue CLI 2 构建的项目升级到 Vue CLI 4更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线相关网址介绍 - Vue CLI配置参考 - Vue CLI升级细则实际升级起来还算比较方便,基本不会影响项目内部的逻辑安装 Vue CLI 4按照官方文档 安装 - Vue CLI 直接全局安装即可,之后查看 Vue...

2020-01-11 14:57:48 2505 1

原创 CKEditor5 集成 Vue

在 Vue 中集成 CKEditor5更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线写在前面的话这已经是为同一个产品写的第三篇关于富文本编辑器的笔记了,这东西真的是别人的东西,怎么都不好用,所以说一个好产品里面的富文本编辑器,最终必然是要走向高度定制化简单在笔记软件中搜索了一下,就有以下三篇,这还只是和 Vue 项目相关的,之前还使用过 Simdi...

2020-01-11 14:53:16 2237 1

原创 Linux 命令行与 shell 脚本编程大全 13 更多的结构化命令

介绍能够控制 shell 脚本流程的结构化命令更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览和 Java 、JS 一样,在 shell 脚本中也可以使用 for 、 while 循环until 循环则是和 while 循环在条件判断规则上完全相反的的一种循环操作break 命令支持直接终止循环,同时还可以通过 break n 指定要终止的循环层...

2020-01-07 09:33:39 218

原创 Linux 命令行与 shell 脚本编程大全 12 使用结构化命令

介绍可以对 shell 脚本中的命令进行逻辑流程控制的结构化命令( Structured Command )更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览使用结构化命令可以改变 shell 脚本的正常执行流程if-then 语句是最基本的结构化命令,允许执行一个命令,并根据命令的输出情况决定后续输出if-then-else 语句是 if-the...

2019-12-31 15:58:11 247 1

原创 Linux 命令行与 shell 脚本编程大全 11 构建基础脚本

介绍编写 shell 脚本的基础知识更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览可以使用分号在同一行中执行多个命令在创建 shell 脚本时,必须指定 shell 脚本将要使用的 shell 类型,例如 #! /bin/bash ,表示使用 bash shell 作为 shell 脚本的执行环境变量的声明不需要添加任何前缀,但变量的使用需要添...

2019-12-25 22:43:42 329

原创 quill-editor 2.0 集成 vue

在 vue 项目中使用 quill-editor 2.0更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线写在前面的话之前做过 vue-quill-editor 富文本框编辑器 ,这个版本是基于 Github 上一个已经集成好的组件做的二次开发这个组件是基于 [email protected] ,但是现在需要编辑器能支持插入表格,这个需求 [email protected] 做...

2019-12-23 01:30:52 2286 8

原创 Linux 命令行与 shell 脚本编程大全 10 使用编辑器

介绍在 Linux 中常用的文本编辑器更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线10.6 导览Unix 中最流行的 vi 编辑器,被移植到 Linux 中后被叫做 vim 编辑器vim 编辑器功能强大,评价更是两极分化,因为太复杂了nano 编辑器是从 Unix 中的 Pico 编辑器衍生而来,Pico 编辑器没有遵循 GPL 协议,但是 na...

2019-12-21 18:34:48 356

原创 Linux 命令行与 shell 脚本编程大全 9 安装软件程序

介绍 Linux 中能见到的各种包管理系统,以及可以用于安装、管理、删除软件的命令行工具更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线导览基于 Debian 的 Linux 使用 dpkg 作为 PMS 的核心工具基于 Red Hat 的 Linux 使用 rpm 作为 PMS 的核心工具dpkg 的用户交互命令是 aptitude 命令rpm ...

2019-12-18 15:53:54 295

原创 Linux 命令行与 shell 脚本编程大全 8 管理文件系统

了解 Linux 中不同的文件系统如何创建和使用更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线8.1 探索 Linux 文件系统8.1.1 基本的 Linux 文件系统下图对 Linux 官方直接支持的 ext 系列文件系统做了一个简单的梳理8.1.1.1 ext 文件系统ext 就是 Linux 最早引入的文件系统的简称,全称被叫做 扩展...

2019-12-12 13:25:07 247

原创 Linux 命令行与 shell 脚本编程大全 7 理解 Linux 文件权限

了解如何利用 Linux 文件安全系统和共享数据7.1 Linux 的安全性Linux 安全系统的核心是用户账户7.1.1 /etc/passwd 文件/etc/passwd 是 Linux 中用于存放用户登录信息的文件,如下图在该文件中将用户的登录名与对应的 UID 进行匹配在该文件中通常会存在很多账户,但有些账户并不是真的用户,例如 mail这类账户是 Linu...

2019-12-07 19:00:59 268

原创 Linux 命令行与 shell 脚本编程大全 6 使用 Linux 环境变量

Linux 环境变量能提升 shell 使用体验很多程序和脚本都通过环境变量获取系统信息、存储临时数据和配置信息更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线6.1 什么是环境变量shell 中用来存储有关 shell 会话和工作环境的变量,被叫做 环境变量( Environment Variable )环境变量 被存储在内存中,方便程序或在 sh...

2019-11-23 11:59:00 205

原创 Linux 命令行与 shell 脚本编程大全 5 理解 shell

了解子 shell 和 父 shell 之间的关系以及一些命令5.1 shell 的类型Linux 中,用户使用的 shell 类型,被配置在 /etc/passwd 文件中,通常都是 bash shell除了 bash shell ,CentOS 中一般还内置了 tcsh shell 、dash shell 、ash shell、tcsh shell查看当前系统是否内置了上述 sh...

2019-11-21 15:36:23 232

原创 Linux 命令行与 shell 脚本编程大全 4 更多的 bash shell 命令

了解一些 shell 的管理命令更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线4.1 监测程序Linux 系统管理员面临的最复杂任务之一就是 跟踪运行在系统中的程序4.1.1 ps 命令探查进程当程序运行在 Linux 中时,被称为 进程( Process )ps 命令可以输出运行在系统上的所有程序的进程信息默认情况下,ps 命令只会显示当...

2019-11-17 00:32:24 196

原创 Linux 命令行与 shell 脚本编程大全 3 基本的 bash shell 命令

了解一些 shell 的基本特性更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线3.1 启动 shell登录 Linux 时会启动的 shell 类型,由用户配置文件决定,该配置文件位于 /etc/passwd打开该文件可以看到如下内容每一行记录的最后一段内容就是制定了用户使用的 shell 类型3.2 shell 提示符默认的 sh...

2019-11-12 17:42:46 432

原创 Linux 命令行与 shell 脚本编程大全 2 走进 shell

了解可能会在 Linux 发行版中碰到的终端软件包2.1 进入命令行命令行界面( Command Line Interface ,CLI ) 只能接受文本输入,只能显示文本和基本的图形输出2.1.1 控制台终端让 Linux 退出图形化桌面模式,进入文本模式,就是进入 CLI ,也被称为 Linux 控制台Linux 启动后,会自动创建一些虚拟控制台,这是运行在 Linux 内...

2019-11-09 14:54:42 169

原创 Linux 命令行与 shell 脚本编程大全 1 初识 Linux shell

了解什么是 Linux ,并介绍命令行和 shell 在 Linux 整体架构中的位置更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线1.1 什么是 Linux下图中的每一部分在 Linux 中各司其职,协同构成一个完整的 Linux 系统1.1.1 深入探究 Linux 内核内核是 Linux 的核心内核控制着计算机系统上所有的硬件和软件,...

2019-11-07 18:31:33 392

原创 iTerm2 ZSH 主题修改

如果 iTerm2 的主题显示出现问题,应该如何修复更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线说在前面的话首先针对的是将终端语言从 Bash 替换成 Zsh 的 iTerm2需要安装 ZSH 的可以参考 Oh My Zsh - a delightful & open source framework for Zsh需要替换 ZSH 主题...

2019-11-07 09:07:29 2231 2

原创 Zip4j解压文件

使用 zip4j 可以快速对文件进行解压缩处理更多精彩更多技术博客,请移步 IT人才终生实训与职业进阶平台 - 实训在线官网GitHub - srikanth-lingala/zip4j: A Java library for zip files and streams特性支持Zip文件的创建、添加、解压、更新、移除可读写有密码保护的Zip文件支持AES 128/25...

2019-11-06 13:37:09 1003

原创 整洁代码之道 17 味道和启发

对整本书中提到的优化手段做了一系列总结17.1 注释17.1.1 不恰当的信息注释只应该描述对应代码和设计的技术信息,不要说废话17.1.2 废弃的注释废弃的注释会远离它们曾经描述的代码,更有可能这些代码早已经不存在了17.1.3 冗余注释注释应该描述代码本身无法描述清楚的信息,不要重复的描述17.1.4 糟糕的注释如果要编写一条注释,就应该花时间保证写出最好的...

2019-11-02 17:17:49 414

原创 整洁代码之道 16 重构 SerialDate

又一个实战类型的章节,主要讲如何让测试完整的覆盖代码16.1 首先,让它能工作16.2 让它作对16.3 小结提高测试覆盖率能有效让代码更整洁

2019-11-02 17:17:45 433

原创 整洁代码之道 15 Junit 内幕

分析了一段 Junit 代码,相当于一次小实战这种代码解析类型的内容确实不适合 Kindle 看15.1 Junit 框架Junit 的基础代码是 Kent Beck 和 Eric Gamma 在飞机上花三小时写出来的15.2 小结我们每个人都有责任把模块改进的比发现时更整洁...

2019-11-02 17:17:39 398

原创 整洁代码之道 14 逐步改进

通过对一个命令行参数解析程序的讲解来体现整洁代码的实现过程代码内容太长,而且后面的代码排版出现了问题,没有仔细看14.1 Args 的实现编程是一种技艺甚于科学的东西要编写整洁代码,必须先写出肮脏代码,然后再清理它的过程中积累经验,精湛技艺14.2 Args:草稿14.2.1 所以我暂停了14.2.2 渐进14.3 字符串参数14.4 小结代码能工作还不够,仅仅是能工...

2019-11-02 17:17:34 822

原创 整洁代码之道 13 并发编程

整洁的并发编程是个复杂话题,这一章我看完收获不是很多,因为直到目前为止都没有怎么涉及过并发编程13.1 为什么要并发并发是一种解耦策略,可以把 做什么 和 什么时候做 区分开做什么相当于 目的什么时候做相当于 时机解耦目的和时机能明显改进系统的吞吐量和结构13.1.1 对于并发的误解认为并发总能改进性能并发有时候确实可以改进性能但只有在多个线程或多个处理器之间能...

2019-11-02 17:17:31 245

原创 整洁代码之道 12 迭进 Emergence

这本书越到后面翻译的越是起飞,这一章的英文标题是 Emergence ,完全不知道这个译者为啥会自造一个词来实现翻译译者想表达的意思可能是迭代+进化12.1 通过迭进设计( Emergent Design )达到整洁目的要做到良好的软件设计,需要遵守以下四条规则,顺序按照重要程度排列运行所有测试不可重复表达程序员的意图尽可能减少类和方法的数量12.2 简单设计规则 1...

2019-11-02 17:17:26 283

原创 整洁代码之道 11 系统

整洁代码的层次继续上升,从类到系统,本章讲解如何在较高的系统层级上保持代码整洁11.1 如何建造一个城市系统和城市一样,有些人负责全局,其他人负责细节,几乎不可能一个人掌控所有11.2 将系统的构造与使用分开软件系统应该将启动过程和运行时逻辑进行分离11.2.1 分解 main 方法将构造与使用分开的方法之一就是 将全部的构造过程搬迁到 main 方法中11.2.2 ...

2019-11-02 17:17:21 187

原创 整洁代码之道 10 类

要做到真正整洁的代码,至少要将注意力上升到类的层面10.1 类的组织根据标准的 Java 约定,类的标准组织应该如下所示public class ClassName { // 公共静态变量 // 私有静态变量 // 私有实体变量 // 公共函数 // 私有工具函数}10.2 类应该短小在设计类时,首要规则就是要尽可能短小,不要有多余的、不属于这个...

2019-11-02 17:17:17 192

原创 整洁代码之道 9 单元测试

测试是简单的驱动式程序,让我们能够手工与自己编写的程序交互9.1 TDD 三定律在编写不能通过的单元测试前,不可编写生产代码从测试的角度考虑代码实现只可编写刚好无法通过的单元测试,不能编译也算不通过只可编写刚好足以通过当前失败测试的生产代码9.2 保持测试整洁测试必须随生产代码的演进而修改测试代码和生产代码一样重要单元测试让代码可扩展、可维护、可复用9.3 整...

2019-11-02 17:17:13 223

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除