自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

冰糖的博客

一个无所事事的小人物

  • 博客(156)
  • 资源 (5)
  • 收藏
  • 关注

原创 Spring扩展点(三)Spring常用内置工具类

Spring常用内置工具类Base64UtilsFileCopyUtilsFileSystemUtilsReflectionUtilsResourceUtilsStringUtilsAopUtilsMethodInvokingBean(简洁反射调用,指定类的指定方法,将其声明为Bean即可在 afterPropertiesSet 阶段触发反射方法调用)Base64UtilsFileCopyUtilsFileSystemUtilsReflectionUtilsResourceUtilsString

2024-05-04 22:54:35 284 1

原创 Spring扩展点(二)Spring事务生命周期

Spring对JDBC事务做了封装,使其易于使用。主要分为声明式事务和编程式事务。@TransactionalEventListener 可以在。方法注册自定义的事务周期函数。对应的事务生命周期会调用自定义。监听事务中发出的自定义事件。

2024-05-04 17:08:09 474

原创 Spring扩展点(一)Bean生命周期扩展点

基本生命周期:实例化 → 属性设置 → 初始化 → 销毁。

2024-05-04 16:32:20 570

原创 自定义Maven项目模板Archetype,快速创建模板项目。

在IDEA中添加刚才的 install 本地仓库maven坐标。

2024-05-01 17:28:41 412

原创 nimbus-jose-jwt库简单使用 & 公私钥字符串互相转换

需大于等于 对应算法所需的密钥长度。包括生成RSA密钥对。

2024-03-29 00:58:43 357

原创 DIV + CSS 布局:盒子内容超出宽度时,不换行,以滚动条形式水平滑动

【代码】DIV + CSS 布局:盒子内容超出宽度时,不换行,以滚动条形式水平滑动。

2024-03-24 03:21:27 708

原创 浅浅聊下守护线程与用户线程的区别

根据以上的配置:得到一个核心线程和最大线程数都是1,永不销毁的线程池;那么这个线程会一直保持;:其他普通线程基本都可以归到用户线程下,包括主线程。可以看到:JVM几乎是在主线程运行结束的同时就退出了,而没有等线程池中的任务执行完毕。由于这里的线程是以线程池形式运行,因此线程的生命周期实际上由线程池控制,可以看看。核心线程数为:0,也就是说,实际的工作线程都是线程池启动后再创建的非核心线程。不会执行一次指定任务就结束,而是持续运行,直到用户线程全部退出后自动结束。创建的线程池,内部线程均为用户线程,JVM。

2024-02-01 15:48:22 905

原创 git 基本使用

【代码】git 基本使用。

2023-10-30 23:11:43 358

原创 Redis 集群 & Redis 事务 & Redis 流水线 & Redis 发布订阅 & Redis Lua脚本操作

通知型脚本:当sentinel有任何警告级别的事件发生时(比如说redis实例的主观失效和客观失效等等),将会去调用这个脚本,这时这个脚本应该通过邮件,SMS等方式去通知系统管理员关于系统不正常运行的信息。调用该脚本时,将传给脚本两个参数,一个是事件的类型,一个是事件的描述。7.sentinel的notification-script和reconfig-script是用来配置当某一事件发生时所需要执行的脚本,可以通过脚本来通知管理员,例如当系统运行不正常时发邮件通知相关人员。

2023-10-13 15:50:01 1290

原创 解决方案(二)三方数据同步

当接入第三方系统时,可能涉及到同步第三方的数据;如果第三方有主动推送机制还好,可以直接接收推送消息。但是,有的系统并没有主动推送机制;还有即使有推送,可能也有各种异常情况导致的同步失败。此时,就需要我们主动查询。

2023-09-26 23:22:13 392

原创 JDK21新特性 有序集合

Java集合体系中,原来就有有序集合实现,但是没有规范支持有序操作的接口。,用于定义有序集合支持的操作。JDK21 新增了两个接口。

2023-09-26 22:59:32 367

原创 解决方案(一)蓄水池抽样算法(可用于抽样,抽奖等场景)

该算法可用于从数据流中随机抽取指定数量的样本。假设目标样本数量为 n,参与抽样的数量为 i。提供基本实现思路,实际落地适当改造。为个人日常分享,仅作参考。各种解决方案欢迎留言。

2023-09-26 21:48:46 215

原创 JDK21新特性 虚拟线程

现有的并发模型最终任务的执行是落到线程上面的。这个线程的实现为操作系统 线程的包装器,操作系统线程的成本很高,因此我们不能创建太多线程。在JAVA21中,传统线程称之为平台线程,在平台线程之下,派生出虚拟线程,而虚拟线程是非常轻量级的,突出一个用完就丢虚拟线程的调度由平台线程控制,切换虚拟线程上下文;在操作系统层面,还是一个同一个线程里面。因此,虚拟线程不该被池化,而是来个任务就直接放到虚拟线程中运行。

2023-09-23 17:12:52 446

原创 Spring Boot 发送邮件

常用邮箱有开启SMTP授权引导;

2023-09-15 16:37:26 935

原创 H5 + C3基础(八)(3d转换 位移 & 旋转)

3d转换在2d转换中增加了一个z轴,垂直于屏幕,向外为正,向内为负。

2023-08-29 15:33:12 907

原创 H5 + C3基础(七)(C3动画)

与动画相比,过渡,需要触发,而且效果相对比较单调,动画可以实现更细粒度的控制和更丰富的效果。定义动画:采用如下语法定义一个名为 move_right 的动画0% {100% {0% 也可以写作 from100%也可写作 to。

2023-08-29 00:47:41 151

原创 H5 + C3基础(六)(2D转换transform 位移 & 旋转 & 缩放)

/ 从3维原点到指定3维坐标点(x,y,z)连接的线旋转 180度。如果盒子尺寸一旦变化,margin的值也要跟着改动,如果使用平移 50% 实现,就无需改动。除了给定像素值,还可以指定方位:top,bottom,left,right,center。# 统一设置设置x,y轴方向尺寸为同一个值。所谓2D转换,就是在二维坐标系内进行各种操作,包括平移,转动,缩放等等;

2023-08-28 19:04:53 920 2

原创 H5 + C3基础(五)(seo相关标签 & 顶部快捷栏实践 & Logo seo)

前端开发中主要seo标签 title, description, keywords。体现网页的主题,非常重要,是搜索引擎了解网页的入口。简短介绍网站主要内容:主营业务,资质,优势等。排名的方式,进而提高网站的自然流量。搜索时命中的关键字,多个关键字使用。,是一种利用搜索引擎规则。网站在搜索引擎结果中。

2023-08-28 13:45:12 98

原创 H5 + C3基础(四)(基础样式 & 公共样式 & favicon使用)

favicon 为网站页签图标和地址前的图标,大小 一般为 16×16 或 32 × 32,通常放置在 应用根目录。在多个页面都要使用到的 样式可封装到 common.css 中;如常见 头部 和 底部样式。基础样式多用于 浏览器样式初始化 ,版心设置,浏览器背景色,清除浮动,字体,文字颜色等。

2023-08-25 14:15:36 109

原创 CSS实践 —— 悬浮盒子阴影加上移效果

【代码】CSS实践 —— 悬浮盒子阴影加上移效果。

2023-08-23 01:13:40 1067

原创 前端常见问题细节汇总 & 简写属性 & JS易忘点

li 元素浮动 导致 box 盒子高度为0 ,进而影响了 footer 盒子,飘到 li 列表里面去了。

2023-08-19 12:11:58 247 1

原创 shell 命令 tee & {..}定义循环体

tee{..} 循环体。

2023-08-15 19:17:16 313

原创 Linux 基础(九)软件包管理

和Maven一样,YUM默认中央仓库为国外的仓库,下载速度较慢,需要配置国内镜像仓库。rpm -e 软件名(无需完整包名):检查依赖,当前软件被依赖,则无法提示报错。不检查依赖,强制卸载,可能导致依赖它的软件无法正常运行。rpm包管理工具存在缺陷,需手动维护软件之间的依赖关系,而且先下载rpm包。YUM底层还是使用的RPM,只是对其做了一些优化,使其更易于使用。YUM 在安装软件时,会自动下载安装所需依赖软件,然后安装本软件。基于以上原因,基于RPM,更智能化的软件管理工具YUM就诞生了。

2023-08-13 03:54:49 453

原创 Linux 基础(八)常用命令 - ps & kill & pstree & top & netstat & crontab & lsof

crontab 的表达式与 一般cron表达式略有出入没有秒,年。killall 进程名称,停掉某个程序启动的所有进程。kill [opts] pid: 按pid停掉进程。crontab 管理定时任务,按用户进行隔离的。process status 查看进程状态。-i:仅展示,上次刷新到此刻活动过的进程。以下分别是两种方式查看本地进程信息。Linux 系统自带的定时任务服务。系统就会自动运行该任务。,是一个systemd创建的服务。查看所有进程,父进程id。查看所有进程,资源占用。展示当前所有进程信息。

2023-08-13 02:44:03 324

原创 Linux 基础(七)常用命令 - 磁盘分区命令

剩余的空间默认 /dev/sda2 分区 挂载到 / 目录,只是这里没有完全展示分区2的信息,它里面包括了 swap 分区。NTFS:是Windows系统中常用的文件系统类型,Linux可以通过ntfs-3g驱动来挂载和读写NTFS分区。如果需要划分更多的分区,可以使用。ext3:是ext4的前身,也是常见的Linux文件系统类型之一,支持日志记录和回滚功能。ext2:是ext3的前身,是较旧的Linux文件系统类型,不支持日志记录功能。ext4:是Linux上最常用的文件系统类型,支持大容量文件和分区。

2023-08-12 23:08:02 3340

原创 Linux 基础(六)常用命令 - find & locate & which & whereis & gzip & gunzip & tar

但是这个数据库并不是实时更新的,可能最近添加的文件并未收录进去,也可能已经删除的文件没来得及移除;通过本地数据库并非实时搜索文件,定位文件,Linux系统会为每个文件建立路径对应的本地数据库。tar 命令是通过 参数来决定是打包还是解压的操作,常用参数如下。find 目录(不指定目录,则以当前目录查找) 查找参数。,并且默认保留源文件,压缩多个文件默认生成到一个压缩文件。默认是一周更新次,如果要修改这个频率,编辑。源文件,压缩多个文件时分别压缩成。查找执行文件或命令相关的文件,(默认,为压缩文件),

2023-08-12 17:08:14 380

原创 Linux 基础(五)常用命令-文件属性

其中 rwx 分别表示 :读权限,写权限(仅限修改,不能删除;命令:chmod [-R 如果修改的是文件夹,对其内部所有文件执行该操作]分别表示 所属用户权限(u),所属用户组权限(g),其他用户权限(o);该命令有几种方式设置权限属性:增量修改和全量覆盖。Linux中文件权限 可以通过文件属性体现;第一个7代表 所属用户有有所有权限;用户/数组/其他用户/所有用户。后面的rwx,以三个为一组,第三个7表示 其他用户的权限。第二个7表示 所属组的权限。修改文件所有者属性 使用。的修改权限),执行权限。

2023-08-12 02:40:59 622

原创 Linux 基础(四)常用命令-日期 & 用户权限

想要执行sudo 操作,需要root用户事先将 需要使用sudo的用户添加到 sudoers 列表中 /etc/sudoers 参考root用户,增加一行对应用户的配置。创建用户时,如果没有指定用户组,则默认创建同名组;修改用户(修改其他属性参考帮助文档)组信息都在 /etc/group 中。

2023-08-12 01:01:18 348

原创 Linux 基础(三)常用命令-文件目录

tail -n file 展示文件后10行,默认就是10行;-10f 查看文件实时内容,并展示10行。ln 给文或目录创建软链接,类似快捷方式;软链接文件仅仅是个特殊的文件。head -n 10 file 展示文件前10行,默认就是10行。echo 输出内容到控制台;history 执行过的命令历史。

2023-08-11 21:09:26 417

原创 Linux 基础(二)修改hostname & 修改本地域名解析 hosts & network 和 NetworkManager & 创建系统服务 & 关机重启

打开一个文本编辑器,创建一个新的.service文件,例如myservice.service。[Unit]Description=After=[Service]ExecStart=ExecStop=Type=Restart=[Install]

2023-08-11 17:34:16 970

原创 Vim基本使用

在常规模式下,按下 i 或者 o ,进入编辑模式,此时可以进行文本编辑。移动光标到起始位置,按下y,按下$(和正则类似 $表示结尾)移动光标到起始位置,按下y,按下^(和正则类似 ^表示开始)在常规模式下,按下 : 或者 /?此模式下我们可以进行复制,粘贴,删除等操作。删除/剪切一个字符,光标不动删后面的字符。编辑完成,按下 esc 回到常规模式。先按下要删除的总行数 ,再按 dd。先按下总行数 数字,再按yy。按下 r ,然后输入对应的。复制一行中光标后面的内容。先按下数字,再按 p。

2023-08-11 02:12:04 1169

原创 Linux 文件基础(一)文件系统

但是根目录下的 bin 目录只是一个链接文件,它链接到的实际目录是。Linux 系统需要的一些库文件,lib64 位64系统的特殊库文件;虽然Linux有很多不同的发行版,但是其基本目录结构都是类似的,因此只要了解一个发行版基本足矣。设备目录,描述硬件设备,Linux中万物皆文件,硬件设备也以文件形式描述。我们需要做的是,先分区,再创建目录,然后将指定分区挂载到对应的目录。同样也是存放可执行文件的目录,但是sbin里面存放的一般是。,同样它也是一个链接文件,实际目录为。主要存放一些应用程序的配置文件。

2023-08-10 23:53:57 318

原创 虚拟机安装 Ubuntu桌面版,虚拟机可以访问宿主机,宿主机无法访问虚拟机

网络连接使用的是桥接,查看ubuntu的ip是正常的,与宿主机在同一个网段。获取已经设置的规则,可以获取到规则编号,用于后续操作。最后发现ubuntu内没有ssh服务。能ping通但是无法连接。

2023-08-10 17:00:41 620

原创 Shell编程基础(十六)文本三剑客(awk & cut)

前面的 grep 和 sed 在处理文本时都是以行为单位,逐行处理;还有很多其他的命令都是以行为单位进行处理。在实际开发运维中,可能需要拆分整行内容,只关心部分字段。可以使用awk进行拆分。与 grep,sed类似;awk 可以直接从文件获取数据也可以从管道流获取数据。awk的功能非常丰富,它作为一门独立的变成语言。创建 student.txt 文件。各种匹配方式可结合正则实现。

2023-08-10 00:04:46 155

原创 Shell编程基础(十五)文本三剑客(sed)

``bash# 将含有 abc 的行 的第一个 abc 换成 def。

2023-08-09 03:08:12 165

原创 Shell编程基础(十四)文本三剑客(grep)

|, \w(匹配大小写字母和数字,相当于[A-Za-z0-9]),\W (所有非字母数字 = [^A-Za-z0-9]),\b 边界词 \bxxx\b相当于 \)-C : 显示上下多少行 -C10上下都显示10行。-A :显示下面多少行 -A10向下显示10行。-B:显示上面多少行 -B10向上显示10行。-q :不显示匹配结果,但返回值依然有。-v :从结果中过滤掉 -v的后的数据。-R :匹配指定目录下的所有文件。egrep -l :只显示文件名。-o :只显示匹配的关键字。

2023-08-08 18:15:52 181

原创 新一代构建工具 maven-mvnd

因此推出了gradle之类的项目,虽然gradle在构建效率是高于maven,但是在一般的小项目上优势并不明显,而且大部分人长久以来习惯了使用maven,导致gradle的流行度并没有想象的高。maven 作为一代经典的构建工具,流行了很多年,知道现在依然是大部分Java项目的构建工具的首选;但随着项目复杂度提高,代码量及依赖库的增多使得maven在大型项目的构建的速度上被人诟病。现在IDEA上还没有专门的集成插件,可以配置mvnd内置的maven到IDEA,不必单独再下载maven。

2023-08-08 16:29:20 620

原创 Maven配置文件加载问题

我们通过。

2023-08-08 14:42:36 362

原创 基于 eclipse-temurin 镜像部署spring boot 应用

在CI流程中,一般都会集成 打包,构建镜像,分发,启动容器之类的流程;app_dockerfile 内容如下。我们在项目根目录执行脚本即可。这里提供一个示例,进攻参考。run.sh 内容如下。

2023-08-08 04:06:13 1184

原创 Dockerfile 启动应用传递ENV参数问题

但这样一来,像容器外体现的就是shell进程,而不是实际的应用进程,应用进程就变成了一个。这里 使用的是 bash -c “java -jar xxx” ,能够直接获取 ENV server.port=8081 设置的端口。ENTRYPOINT+ shell 命令(java -Dxxx=xxx -jar xx.jar --xxxx.xxx=xxx)CMD + shell 命令(java -Dxxx=xxx -jar xx.jar --xxxx.xxx=xxx)ENTRYPOINT :指定的命令依然有效,

2023-08-08 03:23:31 846

最新版本docker compose Linux 版

最新版本docker compose Linux 版

2023-09-07

swiper css + js 资源

swiper css + js 资源

2023-09-04

HTML + CSS 基本案例

HTML + CSS 基本案例

2023-08-22

Kibana测试语句,测试

Kibana测试语句,测试

2023-06-24

Nginx 配置文件,示例

Nginx 配置文件,示例

2023-01-07

kubefannel.yml

kubefannel.yml

2021-10-14

dockerfile-maven-plugin.txt

dockerfile-maven-plugin.txt

2021-09-22

redis_config.sh

redis_config.sh

2021-07-18

xshell+xftprar.rar

xshell+xftprar.rar

2021-07-18

jdk8+tomcat8.rar

jdk8+tomcat8.rar

2021-07-18

空空如也

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

TA关注的人

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