链滴
社区愿景和功能特性
优雅的 Markdown 所见即所得编辑
快捷键交互
随时自由编辑分享内容
支持注销账号来去自由
分布式社区网络
开放 API
产品
Symphony 社区系统(Java)
Solo 博客系统(Java)
Vditor 编辑器(TypeScript)
思源笔记(Electron、Go)
Pipe 博客平台(Vue、Go)
发展计划表
发展简史
榜单
GitHub 仓库排行
帖子打赏排行
Solo 博客端排行
积分排行
活跃度排行
贡献排行
本站基于开源项目 Sym
编程代码问答
登录
注册
好玩
前端
后端
工作
B3
推介
查看所有领域
Java
golang
Node.js
Python
数据库
Spring
C++
PHP
Java 标准库 API 系列之 CountDownLatch
[图片] 继续 Java 标准库 API 系列文章,今天要讲的是一个同步利器。CountDownLatch 是 Java 中的一个同步工具类,它允许一个或多个线程等待一组事件的发生,直到所有事件都发生后才能继续执行。CountDownLatch 通过一个计数器来实现,初始化一个正整数,每当一个事件发生时,计数器减 1, ..
49
10 个月前
Java 标准库 API 系列之 Exchanger
[图片] 作为一名 java 程序员,熟练掌握 java 提供的标准库是非常必要的,所以有了 Java 标准库 API 系列文章来介绍 java 标准库里的一些常用的工具类,了解这些标准库可以从中学习到大神贡献给 java 的优良的代码和理解一些操作系统的原理,例如并发等等。。。 本文会介绍 juc 包下的 Excha ..
51
10 个月前
Javassist - Java 字节码处理工具
[图片] 关于 java 字节码的处理,有很多工具,如 bcel,asm。不过这些都需要直接跟虚拟机指令打交道。如果你不想了解虚拟机指令,可以采用 javassist。javassist 是 jboss 的一个子项目,其主要的优点,在于简单,而且快速。直接使用 java 编码的形式,而不需要了解虚拟机指令,就能动态改变 ..
51
10 个月前
Python 生成可执行文件
简单过程 0、先安装 Python 1、cmd 安装 PyInstaller pip install pyinstaller 国内网络连接太慢,可能导致失败,最好开代理 2、cmd 到脚本所在文件夹,执行以下命令 pyinstaller -F 文件名.py 3、之后,在所在文件夹会生成三个文件夹:pycache,bui ..
79
10 个月前
监听 Redis 缓存过期(Key 失效)事件
[图片] 监听 Redis 缓存过期(Key 失效)事件 最近写公司一个项目遇到一个场景,设备上线后会以 0.5HZ 的频率给后台发送状态消息,20 秒内没有重连则认为设备下线,需要执行相应操作。 首先想到的就是在 Redis 存带过期时间的 key,每次设备发来消息就去刷新 key 的过期时间,key 过期后,则执行 ..
125
11 个月前
前后端 AES 加解密
前后端 AES 加解密 1.场景 目前在公司有一个业务需求,会员邀请新会员注册时。前端生成邀请码后进行 AES 加密,后端解密后将邀请码存储到数据库中,是前端加密,后端解密的场景。在 CSDN、掘金等平台尝试了几个例子,又自己修改了下后达成了想要的效果。写这篇文章用以记录存档,欢迎大家讨论交流! 2.类库使用 后端/J ..
271
11 个月前
通过 MAT 分析 Java 程序内存问题
查看程序内存占用 kubectl top pod -nsky [图片] 进入目标容器 kubectl exec -it -nsky bash [图片] 获取 java 程序进程号 jps [图片] 保存堆栈信息 jmap -dump:live,format=b,file=<文件保存位置> ..
63
10 个月前
C++& 计算机基础知识
1. 指针和引用的区别? 指针和引用在汇编层面是一样的,引用就是指针。引用是编译器对指针做出各种约束之后的产物,我们常说“引用是变量的别名”,这是因为当我们使用引用时,编译器会自动做解引用的操作,因此我们操作引用时,总是操作引用的对象。 因此指针和引用的区别就是语义语法上的区别,引用类似于指针常量,即一旦赋值,不可更改 ..
588
11 个月前
终端输出彩色字符【Python】【ANSI 转义序列】
''' ASCII 码的 0-31 和 127 被称为 C0 控制字符 例如 \07 就是 BEL, 响铃 (\0 表示八进制) 其中 \033 (十进制27, 十六进制x1B) 是 ESC, 转义字符, 它可以用于转义序列 如 \033[ 表示序列导入 (Control Sequence Introducer),简写 ..
56
11 个月前
Spring Scheduler 定时任务常用方法详解
[图片] 1. 普通定时任务 新建一个 springboot 项目,在启动类上添加注解 @EnableScheduling [图片] 然后新建定时任务类 import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation. ..
87
11 个月前
Spug 使用 Docker 发布 spring boot 项目
[图片] 前言 最近在使用 spug 发布项目,发布了一个 Spring Boot 项目,遇到各种坑,记录一下。 关于 spug spug 可以用来方便的管理项目的发布,我也是第一次用,官网地址:https://spug.cc 我们使用的 spug 是自定的镜像,里面包含了 jdk17 和 node16,因为项目要用到 ..
143
11 个月前
老夫的正则表达式大成了,桀桀桀桀!【Python 正则表达式笔记】
一、正则表达式语法 在线工具: [链接] [链接] [链接] (一) 字符与字符类 特殊字符 \.^$?+*{}[]()| 为特殊字符,若想要使用字面值,必须使用 \ 进行转义 字符类 [] [] 匹配包含在方括号中的任何字符。它也可以指定范围,例: [a-zA-Z0-9] 表示 a 到 z,A 到 Z,0 到 9 之 ..
286
11 个月前
Spring Boot 使用 @spring.active@ 报错的问题
[图片] 前言 spring boot 中我们经常会使用 @spring.active@ 来自动切换配置文件,但是使用的时候报错了: org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token found characte ..
103
11 个月前
JDK17 你必须知道的一些新特性
[图片] 前言 之前一直用的是 jdk8,不过新项目上了 Spring Boot3.0,必须要用 jdk17 了,所以了解下 jdk8 之后的一些新特性吧~ 本地变量 var jdk10 提供的: #原先我们需要这么定义 Test t = new Test(); #现在这样定义 var t1 = new Test(); ..
127
11 个月前
Error:Cannot determine path to 'tools.jar' library for 17
[图片] 今天开一个 Spring Boot 3.0 的项目,启动就报错,Spring Boot 3.0 需要 JDK17+,所以先得安装 jdk17。 jdk 直接去 oracle 官网下载就可以了,地址:https://www.oracle.com/java/technologies/downloads/#java ..
196
11 个月前
nodejs- 从 0 写一个 websocket
搬运了我 b 站的文,原创指数 100() [链接] 我写的源码只有 200 行,已经足够完成 websocket 服务器的基础功能了。无论是自己添加功能,排查问题的便利度还是性能方面,都一定是比主流框架强的。学习也好,自己的小项目用也好,我的代码是不二之选。可以直接使用 npm i iiws 来安装。注意如果要修改源 ..
166
11 个月前
多个 Iterable<T> 合成一个 Iterable<T>
使用 Java Stream[链接]实现这个功能 import java.util.stream.Stream; import java.util.stream.StreamSupport; public class IterableUtils { public static Iterable concat(Iter ..
65
11 个月前
Java 多线程
多线程 什么是上下文切换? 当前任务在执行完 CPU 时间片切换到另一个任务之前会先保存自己的状态,以便下次再切换回这个任务时,可以再加载这个任务的状态。任务从保存到再加载的过程就是一次上下文切换。 上下文切换通常是计算密集型的。也就是说,它需要相当可观的处理器时间,在每秒几十上百次的切换中,每次切换都需要纳秒量级的时 ..
61
11 个月前
jvm-demo 系列一:解析命令行工具类
参考资料:《深入理解 java 虚拟机》 《自己动手写 java 虚拟机》 zachaxy 手写 jvm 系列 先自己动手编写一个类似 java 命令行的工具,用它启动虚拟机。Java 虚拟机的工作是运行 Java 应用程序。和其他类型的应用程序一样,Java 应用程序也需要一个入口点,这个入口点就是我们熟知的 mai ..
60
11 个月前
Postgres 数据清理过程
查看数据量大的表 SELECT table_schema || '.' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size(''' || table_schema || ''.'' || table_name || ''')) ..
198
11 个月前
数据库备份
数据库备份共分为两个脚本,一个全量备份,一个增量备份 增量备份基于 binlog,确保数据库开启了 binlog mysql 终端中输入 SHOW variables LIKE 'log_%' 进行查看 [图片] 执行增量备份前,需要先执行一次全量备份,整理备份是在全量备份基础上进行增量备份的 共包含一个配置文件 my ..
67
11 个月前
【开发坑】new File(path).exists()和 Files.exists(Path) 返回结果不一致问题
文件存在的情况下,如:D:/doc.txt 使用 new File('D:/doc.txt').exists() 返回的结果为 true,表示文件存在 使用 Files.exists(Path.of('D:/doc.txt')) 返回的结果为 false,文件不存在? 追溯原因: 在 Oracle Java Bug D ..
123
11 个月前
关于对象和 this
[图片] 前言 最新看到一篇关于对象和 this 的分析,挺有意思的,结合自己的经验,浅浅理解了一下,并做一下记录。 Self 和 this 灵感来自于 python,python 中定义方法,都会默认给个 self,比如: def __init__(self, name, age): self.__name = na ..
31
1 年前
Excelize 发布 2.7.1 版本,Go 语言 Excel 文档基础库
[图片] Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Excel、WPS、OpenOffice 等电子表格办公应用创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM ..
392
1 年前
java 集合总结
先上一张集合家族的结构图,对集合框架有一个整体的认识: 本文出处:[链接] [链接] 对其中的重点进行总结,这样有利于理解与记忆 对于在集合中常用到的泛型: 泛型:就是类型的参数化,泛型是类型的一部分,泛型 + 类名是一个整体。 泛型的通配符(?): 上限限定:比如定义方法的时候出现,public void getFu ..
138
1 年前
配置 Opencv 开发环境
作 者: yangjian 创建日期: 2023-02-23 22:32:50 版权说明: Copyright (c) 2023 yangjian. All rights reserved. Tags: #opencv# References: windows 环境 通过 vcpkg 安装 安装 Opencv vc ..
76
1 年前
impdp(数据泵)-- 导入 dmp 文件
第一步:创建表空间 create tablespace farmdoab datafile 'D:\dzzwpt.dbf' size 100M autoextend on next 50m; 第二步:创建用户,并指定默认的表空间 create user bbzx_phjj_20 identified by 1defau ..
117
1 年前
Django 无法从 cookie 中获取 csrf_token
Django 默认在后端加载了 CSRF 验证中间件,会对非 get 类型请求进行 CSRF 验证,也就是校验请求头或者请求体中是否存在正确的 csrf token,若不存在或者 csrf token 错误,会拒绝请求。 今天在通过 axios 发送 post 请求过程中遇到了一个很令人窒息的问题,在 JS 中无法获取 ..
63
1 年前
阿里云 GDB 初步使用
[图片] [图片] 1. 图 当我们在查看路线图,研究组织结构图,或者使用 Facebook、LinkedIn、Twitter 等社交网络的时候,就是在使用图。图,是一种几乎无处不在、用来思考现实世界场景的方法,因为图能够抽象出这些场景要表现的项(item)和关系,从而能够快速、高效地处理数据中的连接。 举个例子,从家 ..
117
1 年前
Windows 下安装 Redis
1. 安装与使用 点击下载链接,直接进行下载压缩包,解压缩到你想要的目录。 [图片] 运行:redis-server.exe 文件即可 停止服务:关闭 redis 执行窗口即可 [图片] 2. Redis 后台挂载 因为需要频繁使用 Redis,窗口使用的方式容易不小心关闭,以及麻烦。所以可以将 redis 注册成 w ..
112
1 年前
优选帖子推荐算法测试
为了验证社区的优选帖子算法而写的测试类,实现了下 Comparable 接口,算是学习了。Reddit 这个算法是 D 大借鉴的,其中的道理完全看不懂,所谓的睁眼瞎就是这个样子了…… package org.b3log.symphony.util; import org.testng.annotations.Test; ..
182
7 年前