自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 我深入探究C++20中的std::views::iota,发现了它的独特魅力

C++20的std::views::iota是用于生成连续整数序列的惰性视图工具,支持有限序列(如0到9)和无限序列(需配合take限制)。其语法简洁(std::views::iota(start,bound)),具有声明式风格、惰性求值和链式组合优势(可结合filter/transform等操作)。相比传统循环,它节省内存且代码更直观,但需注意边界为开区间、类型需支持递增操作。需要C++20编译器支持(GCC10+/Clang13+),性能接近手写循环,适合函数式编程场景。

2026-06-12 18:52:03 11

原创 为什么选择显式类型初始化而非auto推导

摘要:当auto类型推导不符合需求(如丢失const/引用或推导错误基础类型)时,可通过显式指定类型或结合decltype修正。方法包括:1)基础类型使用构造语法(如auto z = double{5});2)保留引用与const需显式声明或使用decltype;3)模板编程中通过decltype精确捕获表达式类型(如迭代器)。适用场景包括精确控制类型(迭代器、代理对象等)和避免隐式转换,但需权衡代码冗余与可维护性。注意显式类型可能增加耦合性,模板中推荐auto + decltype组合保持灵活性。

2026-06-11 11:50:12 167

原创 我在C++中深入理解了继承,收获颇丰

摘要:本文系统介绍了C++继承的核心概念与技术要点。主要内容包括:1)继承基础,强调代码复用和层次化设计,子类自动继承基类成员(除构造/析构等特殊函数);2)三种继承方式(public/protected/private)对成员访问权限的影响;3)子类内存布局包含基类部分和新增成员;4)构造/析构的严格顺序规则;5)初始化列表使用场景,特别是基类无默认构造时需显式调用;6)公有继承下的赋值兼容规则,允许向上转换但禁止反向操作。全文通过语法示例和内存模型分析,完整呈现了继承机制的实现原理和使用规范。

2026-06-10 17:52:41 169

原创 从零手写了高性能C++ TCP服务器,终于搞定了Util工具的实现

本文介绍了一个HTTP服务器Util工具类,提供以下核心功能:1. 基础字符串处理(分割、URL编解码);2. 文件操作(二进制读写、属性判断);3. 协议支持(状态码映射、MIME类型识别);4. 安全校验(路径合法性验证)。工具类采用纯静态设计,基于C++标准库实现,包含全局映射表(状态码描述和MIME类型)和12个静态方法。关键技术点包括:RFC3986标准URL编解码、二进制文件操作防转义、哈希表快速查询(O(1)复杂度)以及严格的路径层级校验,确保服务器安全性与处理效率。

2026-06-07 20:28:22 209 1

原创 C++ Lambda表达式使用

C++ Lambda表达式是一种匿名函数,其基本语法为捕获列表->返回类型{函数体}。捕获列表控制外部变量访问方式(值捕获/引用捕获),参数列表支持泛型(C++14),返回类型可省略由编译器推导。Lambda常用于STL算法简化调用,如排序和遍历。使用时需注意引用捕获可能导致悬垂引用问题,建议优先值捕获必要变量。性能优化包括使用auto存储、减少捕获数量,C++14/17新增了泛型Lambda、初始化捕获和编译期计算等特性。

2026-06-05 10:33:51 222

原创 基于 qsort 实现泛型编程的五个技巧

本文介绍了泛型冒泡排序的实现要点:1. 使用void指针配合char转换实现数据类型通用性,通过width参数计算元素位置;2. 利用函数指针cmp解耦比较逻辑,支持自定义数据类型排序;3. 采用逐字节交换方法实现类型无关的元素交换。文章提供了完整的泛型冒泡排序实现代码,并以结构体排序为例演示了具体应用方法,展示了如何通过参数化处理实现排序算法的通用性。

2026-06-03 05:25:24 154

原创 C++雾中风景7:闭包

本文深入解析C++中的闭包机制。闭包是函数与创建时词法环境的绑定体,通过lambda表达式实现,使函数能访问定义时的局部变量。文章对比了手动实现闭包的仿函数方法与lambda捕获语法,详细说明按值/引用捕获的区别及mutable关键字的作用。同时指出闭包在避免全局变量、简化代码和延迟执行方面的优势,分析其内存特性与性能考量,并比较闭包与函数指针的差异。最后强调理解底层机制对避免悬垂引用等陷阱的重要性,帮助开发者高效运用闭包处理回调等场景。全文约800字,采用技术说明文的严谨结构。

2026-05-29 07:40:23 240

原创 Arduino RGB LED全彩灯实验教程:色彩理论与自定义函数解析

本文介绍了Arduino控制RGB LED的基础实验教程。主要内容包括:RGB三基色原理、PWM调光控制、电阻选型计算、自定义函数编写等核心知识点。详细讲解了共阴极RGB LED的接线方法(红150Ω、绿蓝100Ω电阻),并提供了七彩灯循环和交通灯模拟两个完整案例代码。实验采用PWM引脚(9,10,11)实现颜色控制,通过analogWrite()函数输出0-255亮度值。文章还包含常见问题排查和进阶应用方向,帮助初学者掌握RGB LED的控制原理和实际应用。

2026-05-17 14:20:12 411

原创 C/C++程序从编译到链接的过程

头文件内容会被直接插入源文件位置,注释会被完全删除。理解编译流程有助于解决符号冲突、链接错误等问题,是进行性能优化和底层开发的基础。静态链接会将库代码直接嵌入可执行文件,动态链接则在运行时加载共享库。此时代码已是二进制格式,但函数地址和外部引用尚未解析。目标文件包含代码段、数据段和符号表等信息,为链接阶段做准备。开头的指令,包括宏定义、条件编译和头文件包含。现代编译器会进行常量折叠、死代码消除等优化。编译器将预处理后的代码转换为汇编语言,生成。文件,仍是文本格式但已完成宏展开。预处理阶段处理所有以。

2026-05-15 22:26:46 57

原创 C++构造函数详解:从基础原理到实际应用

C++构造函数是类初始化对象的特殊成员函数,具有无返回值、支持重载、自动调用等特点。主要类型包括默认构造、有参构造和拷贝构造,其中拷贝构造需注意深/浅拷贝问题。关键用法涉及初始化列表(效率更高且必要)、explicit关键字(防止隐式转换)及移动构造(C++11资源转移)。常见陷阱包括虚函数调用、资源申请失败处理等。构造函数广泛应用于资源管理、对象初始化和工厂模式等场景,能有效提升代码健壮性。

2026-05-15 22:22:40 338

原创 万象生鲜系统功能介绍

万象生鲜系统提供全流程数字化解决方案,涵盖下单、采购、仓储、分拣、配送等十大核心模块。系统支持多端下单、智能采购预测、RFID库存管理、AI路线规划等功能,实现生鲜业务全链路闭环管理。通过区块链溯源保障食品安全,智能硬件提升自动化水平,精准营销工具助力销量增长。采用混合云架构确保数据安全,年迭代1600+功能,适配各类生鲜经营主体,显著提升运营效率与用户体验。

2026-05-11 20:42:55 350

原创 生鲜配送哪家好?首选万象生鲜系统,全链路赋能降本增效

万象生鲜系统打破“高端系统价格昂贵、平价系统功能残缺”的困境,兼顾功能全面性与性价比,无论是初创型生鲜配送商家,还是规模化企业,都能找到适合自己的套餐,无需为冗余功能付费。商家后台实时同步所有订单信息,支持手动接单、自动接单两种模式,配备订单备注、加急标记、取消审核等功能,同时支持智能语音录单、OCR图片识别等12种录入方式,完美适配B端批量采购、C端散客下单、电话订单等多元场景,即使在高峰期10万+并发订单场景下,也能实现秒级响应,人工接单错误率从传统的10%骤降至1%,订单处理效率提升80%以上。

2026-05-11 20:40:24 373

原创 万象生鲜系统:全场景生鲜配送数字化解决方案

在生鲜配送行业竞争加剧、运营成本高企、客户需求多元的背景下,万象生鲜系统深耕行业多年,聚焦饭店、食堂、学校、餐饮配送、零售批发等核心场景,打造出一套覆盖 “下单 - 采购 - 分拣 - 仓储 - 配送 - 财务 - 溯源” 全链路的数字化管理系统。系统以 “功能全面、操作便捷、适配灵活、安全可控” 为核心优势,助力生鲜配送企业破解错单漏单、库存混乱、分拣低效、配送失控、财务不清等行业痛点,实现精细化运营与高效增长。万象生鲜系统:全场景生鲜配送数字化解决方案。一、多场景深度适配,覆盖全行业生鲜需求。

2026-05-07 17:59:51 248

原创 为何万象生鲜在生鲜软件源码排名中独占鳌头

系统具备强大的订单处理能力,能快速对订单进行分类、整合与优先级排序,同时提供详细的订单跟踪功能,从下单、备货、发货到送达,全程状态实时更新,让商家和客户都能随时掌握进度,极大提高了订单处理的效率与准确性,避免漏单错单,大幅提升客户满意度。它还深度分析市场动态和供应商信息,智能对比不同供应商的价格、品质和交货能力,助力企业做出明智采购决策,有效降低采购成本,确保所采购的生鲜食材新鲜、优质且价格合理,同时支持供应商管理和采购合同管理,让采购流程更加规范高效。对每一笔订单准确计算收入和支出,生成清晰财务报表。

2026-05-07 17:58:40 190

原创 万象生鲜配送系统 2025 年 8 月 15 日更新日志

万象生鲜配送系统于2025年8月15日完成重大升级,主要更新内容包括:商品管理新增AI自动抠图、记忆价功能和批量删除;订单处理优化配送单打印与协议单导入;司机配送新增GPS设备绑定、轨迹追踪及温控预警;硬件设备重构电子秤等管理框架;系统优化小程序商城及仓库管理流程。本次升级覆盖小程序、APP及后台系统,全面提升生鲜配送效率与用户体验。

2026-05-07 17:55:41 344

原创 Spring的构造注入

set注入用得比较多构造注入相对来说毕竟麻烦,毕竟有构造方法重载的问题Spring框架中,大量应用了set注入。

2026-04-21 10:34:26 161

原创 Spring 核心技术解析【纯干货版】- Ⅶ:Spring 切面编程模块 Spring-Instrument 模块精讲

Spring-Instrument 模块,是 Spring 框架中一个用于提供类加载器增强和字节码操作支持的模块,主要围绕 类加载时织入(Load-Time Weaving, LTW) 提供功能。它是与 Spring AOP 和 Spring AspectJ 支持密切相关的模块之一,常被用于需要动态修改类行为的场景。

2026-04-21 08:12:30 328

原创 Prometheus(普罗米修斯)----- Nginx监控

#访问地址www2。

2026-04-21 05:55:33 203

原创 MySQL中的TRUNCATE TABLE命令

在MySQL数据库管理中,命令是一个用于快速删除表中所有数据的重要工具。相比常规的DELETE命令,具有显著的性能优势和独特的操作特点。本文旨在深入探讨命令的用法、工作原理以及实际应用中的注意事项。MySQL中的命令是一个功能强大且高效的工具,理解其特性和使用场景有助于我们在日常数据库管理和维护工作中做出正确的决策。务必根据实际情况权衡其优势与风险,确保数据安全和系统稳定。

2026-04-21 03:37:15 222

原创 Java实战:Spring Boot application.yml配置文件详解

本文详细介绍了Spring Boot配置文件的使用和配置项。我们首先了解了文件的基本概念和作用,然后学习了如何使用它来配置Spring Boot应用程序的不同组件,如数据源、数据库、缓存、邮件服务等。通过本文,您应该已经掌握了如何使用文件来配置Spring Boot应用程序。您学会了如何配置数据源、数据库、缓存、邮件服务和其他组件的属性。希望本文能够帮助您在开发Spring Boot应用程序时更加得心应手。如果您有任何疑问或建议,请随时留言交流。

2026-04-21 01:21:33 310

原创 windows系统使用bat命令文件启动redis

最近的项目中使用到了redis,自身电脑系统用的是windows,但是redis的服务启动和连接全部都需要进入到该redis所在的文件夹中,有些麻烦,想到了一些解决方案。因为每次启动redis服务和连接全部都需要激活cmd窗口,而cmd窗口又是windows的命令窗口,那么可以直接通过操作cmd进行命令操作。就是为该文件夹创建一个快捷方式,然后点击该快捷方式直接进入该文件夹中,这种确实快了些,对于那种路径比较深的,效果很明显的快了。不过启动redis服务和连接还是需要cmd,然后输入命令才能进行操作。

2026-04-19 19:39:46 187

原创 SpringBoot读取properties中文乱码解决方案

在IDEA中将所有的编码设置为UTF-8,同时勾上Transparent native-to-ascii conversion的选项,然后重新创建application.properties的文件。由于业务需求需要在application.properties中配置一个带有中文字符串的参数,注入到业务类中,但是发现注入的中文是乱码的。就是将application.properties的文件修改为application.yml的结构,重启项目。

2026-04-19 16:51:27 197

原创 Spring Boot 集成 Kettle

Kettle 最初由 Matt Casters 开发,是 Pentaho 数据集成平台的一部分。它提供了一个用户友好的界面和丰富的功能集,使用户能够轻松地设计、执行和监控 ETL 任务。Kettle 通过其强大的功能和灵活性,帮助企业高效地处理大规模数据集成任务。

2026-04-19 14:11:44 259

原创 Nginx搭建负载均衡

负载均衡是将用户请求分发到多台服务器的一种技术,确保多个服务器共同承担负载,从而提升应用的可用性与响应速度。通过负载均衡,系统能够在某台服务器出现故障时,自动将流量转发至其他健康的服务器,避免单点故障带来的影响。使用Nginx搭建负载均衡能够有效提升系统的可用性和扩展性。通过合理的配置和优化,Nginx不仅可以分担流量,还能确保高效响应。负载均衡在现代Web架构中至关重要,帮助企业应对高并发请求,提升用户体验。希望本文能够为你搭建和维护Nginx负载均衡提供指导和帮助,助力你的应用在高流量场景中稳定运行。

2026-04-19 11:23:48 171

原创 MySQL 与 Redis 的数据一致性问题

简单来讲,我们只能保证先到的请求的第一阶段写的执行顺序(MySQL 内部的事务),第二阶段写就无法保证执行顺序(除非使用强一致性方案),这时候如果使用更新 Redis 的方案就有数据错误的风险。这种清除 Redis 的策略如果有频繁的更新对导致缓存层(Redis) 会失效, 大量的请求会打到 mysql 上面,mysql 可能直接被打爆,造成严重的事故.这时候Redis 的数据是错误的,会导致后面查询的时候全部查询到错误的数据(只能重新加载 MySQL 数据到 Redis 才能恢复)

2026-04-19 02:54:02 185

原创 网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。

我从24年11月份开始学习网络爬虫应用开发,经过2个来月的努力,于1月下旬完成了开发一款网络爬虫软件的学习目标。这里对本次学习及应用开发进行一下回顾总结。前几天我已经发了一篇日志(网络爬虫学习:应用selenium从搜*狐搜索爬取新闻结果的数据)记录了应用中使用的爬虫技术。这篇日志记录另外一个问题的解决。

2026-04-18 07:39:24 1347

原创 保姆级JavaWeb项目创建、部署、连接数据库(tomcat)

本学期学的javaweb,记录一些本篇大致内容就是:部署tomcat–创建项目—连接mysql数据库运行环境:tomcat-8.5.46、JDK1.8、mysql80(也写了mysql57的设置)

2026-04-18 05:16:31 170

原创 【MySQL】MySQL函数之JSON_EXTRACT

在 MySQL 中,函数用于从 JSON 文档中提取一个或多个值。这个函数非常有用,特别是在处理存储在 JSON 格式中的复杂数据时。下面是一些关于如何使用的详细说明和示例。

2026-04-18 02:52:06 208

原创 SpringMVC的工作流程

在上述过程中,DispatcherServlet、HandlerMapping、HandlerAdapter和ViewResolver对象的工作是在框架内部执行的,开发人员只需要配置DispatcherServlet,完成Controller中的业务处理并在View中展示相应信息。DispatcherServlet是前端控制器,是整个流程控制的中心。(5) HandlerAdapter会调用并执行Handler(处理器),这里的处理器指的就是程序中编写的Controller类,也被称之为后端控制器。

2026-04-18 00:29:14 354

原创 Redis和Redis-Desktop-Manager的下载、安装与使用

3、配置环境变量:高级系统设置 => 环境变量 => 系统变量 => path。6、Redis-Desktop-Manager连接Redis(在连接时需要先。2、将下载好的压缩包解压即可【Redis-x64-3.2.100.zip】(3)点击Browse更换安装位置,点击Install。5、安装Redis-Desktop-Manager。4、在命令行输入:redis-server 命令。(2)点击【I Agree】(1)点击Next下一步。(5)点击Finish。

2026-04-04 04:45:16 104

原创 MySQL5.7安装超详细步骤(保姆级教程)

依次点开“MySQL Servers→MySQL Servers→MySQL Servers 5.7→;然后点击绿色箭头将选中的版本移到右侧框中。

2026-04-04 01:45:28 101

原创 SpringBoot中整合RabbitMQ(测试+部署上线 最完整)

RabbitMQ服务端是由并发式语言Erlang编写的,所以安装RabbitMQ的之前需要安装Erlang,保证所需要的环境。注意:这里没有下载的版本,下载需要与自己的版本一致,如果发现启动不了RabbitMQ,请看后面的启动RabbitMQ。由于目前是测试阶段,这里我使用之前学习的时候的版本。

2026-04-02 07:50:08 863 1

原创 postgresql链接详解

连接基础在探讨PostgreSQL连接的基础之前,我们需要理解什么是数据库连接。数据库连接是客户端应用程序与数据库服务器之间建立的一种通信通道,使用户能够访问和操作数据库中的数据。客户端:发起连接请求的应用程序或工具服务器:接收并处理连接请求的PostgreSQL数据库服务端口号:通常使用默认值5432身份验证:通过用户名和密码确认用户权限连接字符串:包含连接所需的所有必要信息这些基本概念构成了PostgreSQL连接的核心框架,为后续更复杂的连接操作奠定了基础。连接字符串。

2026-04-02 04:33:04 371

原创 MySQL —— 配置文件

本篇文章要介绍的是 MySQL 中的配置文件的相关内容。大多数 MySQL 程序都可以从配置文件(选项文件)中读取启动配置,可以在配置文件中指定常用配置,这样就不用在每次运行程序时都在命令行中输入它们。大部分配置文件都是纯文本格式,可以使用任何编辑器来进行创建。在 Windows 系统中,MySQL 配置文件的后缀名为.ini 或 .cnf,在 Linux 系统中,MySQL 配置文件的后缀名只有.cnf。

2026-04-02 01:16:21 389

原创 Java实战:Spring Boot实现WebSocket实时通信

本文详细介绍了如何在Spring Boot应用程序中实现WebSocket实时通信。我们首先了解了WebSocket的基本概念和特点,然后学习了如何使用Spring Boot和Spring WebSocket模块来实现WebSocket服务器和客户端。我们还通过具体的示例展示了如何在Spring Boot应用程序中配置和使用WebSocket,以及如何实现实时消息传递和群发消息等功能。通过本文,您应该已经掌握了如何使用Spring Boot实现WebSocket实时通信。

2026-04-01 23:22:33 272

原创 深入解析MySQL数据库报错:`ERROR 1146 (42S02) Table ‘mysql.user‘ doesn‘t exist`

在安装或升级MySQL数据库时,你可能会遇到错误。这个错误表明尝试访问的mysql.user表不存在,这是MySQL用于存储用户账户和权限信息的关键系统表。本文将详细探讨这一错误的原因和解决方案,帮助你顺利完成MySQL的安装或恢复数据库的正常使用。

2026-04-01 19:59:25 184

原创 在linux(Centos)中Mysql的端口修改保姆级教程

* 这篇文章已经尽可能的详细,希望可以帮助到大家,如果有什么不懂的地方,欢迎在评论区留言,我会及时回复大家**

2026-04-01 05:57:05 41

原创 【JAVA进阶篇教学】第十三篇:Java中volatile关键字讲解

volatile关键字是 Java 中的一种轻量级同步机制,它可以确保变量的可见性和禁止指令重排序。volatile关键字适用于多线程环境下的变量共享,例如状态标志、计数器等。与锁相比,volatile关键字的执行效率较高,但不能保证原子性。如果需要实现原子性操作,需要使用锁或其他同步机制。

2026-04-01 02:52:22 214

原创 springboot中@PostConstruct注解使用详解

是 Spring 中用于在 Bean 初始化完成后执行一些初始化逻辑的注解。它通常用于在依赖注入完成后执行一些必要的初始化操作,如资源加载、配置初始化等。相比于其他初始化方式,更加简洁直观,推荐在大多数场景下使用。

2026-03-31 06:11:34 177

原创 PHP使用Redis实战实录2:Redis扩展方法和PHP连接Redis的多种方案

PHP使用Redis实战实录系列。

2026-03-31 02:58:18 184

Excel使用技巧大全(超全)

Excel使用技巧,让你灵活运用Excel

2010-04-27

Kettle工具介绍

用于指导开发人员对Pentaho Kettle工具的使用和理解,以及扩展开发

2013-12-02

Lucene原理及使用总结

详细介绍了Lucene的原理及使用方法,阐述了核心代码原理

2010-04-20

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

TA关注的人

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