折腾的意义 为什么要自己搭建一个笔记平台?没理由,就是突然想试试。有时候突然有个想法,搜了一下正好有合适的方案,就顺手试一下。 其实已经有很多成熟的笔记软件,例如Notion/OneNote,但谁不想要一个数据完全在自己服务器的笔记呢。 开始搭建 这个搭建是真的麻烦,需要一堆东西: redis po ...
1. 初始 RabbitMQ 消息队列 @目录1. 初始 RabbitMQ 消息队列1. MQ 的相关概念2. MQ 的分类3. MQ 的选择4. RabbitMQ4.1 RabbitMQ 的概念4.2 RabbitMQ 的四大核心概念4.3 RabbitMQ 六大核心部分4.4 RabbitMQ ...
Immutable 如《Effective Java》Item1)所述,在设计类的时候,倾向优先使用静态工厂方法(static factory method)而非构造函数(constructor)创建对象,优点在于: 静态工厂方法多了一层名称信息,比构造函数更富表达性。 可以更灵活地创建对象,比如缓 ...
一、事务的概念 一组数据库操作要么全部成功,要么全部失败,目的是为了保证数据的最终一致性 二、事务的四大特性(ACID) 原子性(Actomicity):当前事务的操作要么成功,要么失败,原子性是由undo log日志来保证 一致性(Consistency):使用事务的最终目的,由业务代码正确逻辑保 ...
title: FastAPI中的Pydantic密码验证机制与实现 date: 2025/03/31 00:04:51 updated: 2025/03/31 00:04:51 author: cmdragon excerpt: FastAPI 中通过 Pydantic 模型实现密码验证,采用分层机 ...
本文主要讲述了Python如何实现定时任务,主要有四种方式:通过threading.Timer类、通过sched模块、通过threading.Event事件机制、通过APScheduler第三方库,结合例程分析了各自使用场景和基本方法。 ...
运算符重载:对已有的运算符重新定义,赋予其另一种功能,以适应不同的数据类型 加号运算符重载 作用:实现两个自定义类型的相加运算 #include<iostream> using namespace std; class Person { private: int m_A; int m_B; publ ...
int[]转Integer[] 代码解析: int[] arr1 = {1, 2, 3}; Integer[] arr2 = Arrays.stream(arr1).boxed().toArray(Integer[]::new); 1. Arrays.stream(arr1) Arrays.stre ...
环境 window10 16G 1TB 下载地址 window版本zip包 https://github.com/alibaba/nacos/releases/download/2.5.1/nacos-server-2.5.1.zip Linux版tar包 https://github.com/al ...
1001: 【编程入门】A+B 输入输出练习I 题目描述 你的任务是计算a+b。这是为了acm初学者专门设计的题目。你肯定发现还有其他题目跟这道题的标题类似,这些问题也都是专门为初学者提供的。 输入两个数,回车后输出结果,然后再输入一对,回车再输出结果。。。。 输入 输入包含一系列的a和b对,通过空 ...
1.系统需求 CentOS 7或更高版本。 centos-extras仓库必须处于启用状态,该仓库默认启用,但如果禁用了该仓库,请重新启用。 建议使用overlay2存储驱动。 2.使用Yum安装 2.1卸载老版本的Docker 在CentOS中,老版本Docker的软件包名是docker或dock ...
前缀和 前缀和又称累计和,是指将序列中从起始位置到当前位置的所有元素进行求和 prefixSum[0] = nums[0] prefixSum[1] = nums[0] + nums[1] prefixSum[2] = nums[0] + nums[1] + nums[2] ... prefixSu ...
结论先行 实现Serializable接口是Java对象序列化的基本前提,没有它JVM会直接拒绝序列化操作。 显式声明serialVersionUID能彻底掌控序列化版本兼容性,避免因类结构微小改动或不同JVM实现导致的灾难性反序列化失败。 在 Java 中实现 Serializable 接口并显式 ...
Java 24作为2025年3月发布的最新版本,延续了Java平台每半年发布一次的节奏,带来了24项重要改进。本文将按照核心改进领域分类,详细解析每个特性的技术原理和实际价值,帮助开发者全面了解这一版本的能力边界和应用场景。 不过Java24是自Java 21 以来的第三个非长期支持版本,下一个长期 ...
本文首发在我的博客:https://blog.liuzijian.com/post/mybatis-plus-source-multi-table-inner-interceptor.html 一、概述 BaseMultiTableInnerInterceptor是MyBatis-Plus中的一个抽 ...
在数据可视化的世界里,饼图是一种直观且广泛使用的图表类型。 它能够将数据各个部分占整体的比例关系清晰地展现出来,适用于诸如市场占有率分析、调查结果分布、预算分配等多个领域。 饼图以扇形面积比例直观展示数据分布,适合用于: 分类数据的占比分析(如市场份额、用户画像) 少量数据的对比呈现(≤6 个分类最 ...
shared_ptr的线程安全性 近期在网上冲浪时看到一篇boost的文章,里面聊到了shared_ptr的线程安全性 https://www.boost.org/doc/libs/1_87_0/libs/smart_ptr/doc/html/smart_ptr.html#shared_ptr_th ...
title: 深入掌握FastAPI与OpenAPI规范的高级适配技巧 date: 2025/03/30 01:16:11 updated: 2025/03/30 01:16:11 author: cmdragon excerpt: OpenAPI规范是RESTful API的标准描述格式,Fast ...
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。 分享了 11 篇文章,12 个开源项目 重要提示:本周刊即将迎来第 100 期,即 ...
大家好,我是小康。今天聊聊让编程新手头疼的"指针"——这个 C 语言第一难点究竟是什么,为什么会被发明出来? 从直接操作内存到编程语言的"导航员" 你有没有过这样的经历:学习编程时,一切都还算顺利,直到遇见了"指针"这个概念,突然感觉像遇到了一道难以逾越的高坎?(我第一次接触指针时也是这样,一脸懵圈 ...