- 博客(120)
- 资源 (2)
- 收藏
- 关注
原创 使用 Logrotate 实现 Nginx 日志自动轮转与管理
logrotate是一个在 Linux 系统中广泛使用的日志轮转工具,它可以按照设定的规则定期自动对日志文件进行切割、压缩、删除等操作,从而有效管理日志文件的大小和数量,避免日志文件无限增长占用过多磁盘空间。它支持多种灵活的配置选项,能够满足不同场景下的日志管理需求。
2025-03-25 09:27:09
650
原创 用 ESP32 和 MicroPython 打造一个板载 LED 控制网页
我们将使用 ESP32 的 WiFi 功能,将其配置为一个接入点(AP)或连接到现有 WiFi 网络。然后,通过 MicroPython 编写代码,创建一个简单的 HTTP 服务器。这个服务器将提供一个网页,用户可以通过点击按钮来控制板载 LED 的开关状态。通过 JavaScript 和 AJAX,我们可以实现无刷新的交互体验。通过这个项目,我们不仅实现了通过网页控制 ESP32 板载 LED 的功能,还学习了如何使用 JavaScript 和 AJAX 实现无刷新交互。
2025-02-05 01:09:58
603
原创 ESP32 触摸检测功能全解析:硬件原理、代码实战与创意应用
通过合理利用触摸引脚,即使没有外设,也能为ESP32项目增加交互维度!实现的,这是其硬件层的独特能力。不同 ESP32 模组/开发板的触摸引脚可能略有差异。
2025-02-04 23:13:52
645
原创 仅凭一块ESP32主板,你能玩转的10个零成本创意项目(无需外设!)
即使只有一块ESP32主板,你仍然可以:✅ 学习GPIO控制✅ 掌握WiFi/蓝牙通信✅ 理解PWM/DAC原理✅ 开发微型物联网系统下一步行动任选本文中的一个项目,10分钟内完成代码烧录在评论区分享你的实验结果(如:“成功用GPIO4实现了触摸唤醒!”)当你准备好扩展时,只需一个5元的按钮或传感器,就能开启新世界!⚡ 现在就让你的ESP32结束吃灰生涯,立刻行动!资源推荐ESP32引脚速查表MicroPython文档无外设调试技巧视频。
2025-02-04 19:14:17
1038
1
原创 为什么你的ESP32代码断电后不运行?Thonny隐藏的“自动启动”规则全解析
Thonny + MicroPython 的极简组合,让ESP32开发从未如此“人性化”。记住这个公式:正确的文件名(main.py) + 无限循环 + 准确引脚 = 100%自启动成功下次当你的代码“断电消失”时,不必再抓狂——你已经掌握了让ESP32“听话”的终极秘诀。🚀 现在就去重启你的ESP32,见证LED规律闪烁的成就感吧!扩展工具ESP32引脚查询工具MicroPython文档Thonny调试技巧视频教程如果本文解决了困扰你多日的问题,欢迎分享给更多开发者!
2025-02-04 17:58:48
1045
原创 ESP32开发工具介绍:Thonny——初学者的MicroPython利器
Thonny是一款专为Python 初学者设计的轻量级集成开发环境(IDE),由爱沙尼亚塔尔图大学开发。它的核心特点是简洁易用,内置调试工具和 MicroPython 支持,特别适合教育场景和物联网快速原型开发。Thonny 凭借其低学习曲线和MicroPython 生态,成为 ESP32 开发中的一匹“黑马”。如果你希望绕过复杂的 C/C++ 环境配置,专注于快速实现创意,Thonny 绝对值得尝试。当然,对于需要极致性能或复杂功能的项目,仍需回归ESP-IDF或PlatformIO等专业工具。🚀。
2025-02-04 16:40:32
1468
原创 如何基于另一个表的数据更新表字段
在数据库管理中,经常会遇到需要根据另一个表的数据来更新当前表字段的情况。这种操作通常涉及到多表查询和更新,可以通过SQL中的子查询来实现。本文将详细介绍如何使用SQL来完成这一任务,并提供具体的示例。
2024-10-25 17:46:56
921
原创 使用 JavaScript 创建具有特定结构的数组列表
在JavaScript开发中,我们经常需要创建数组,其中的每个元素都具有特定的结构。例如,我们可能需要一个列表,其中每个元素都是一个对象,这些对象具有和属性,它们的值与数组索引相对应。本文将向你展示如何使用方法来实现这一需求。 方法是一个用于从类数组对象或可迭代对象创建数组的静态方法。这个方法接受两个参数:第一个参数是类数组对象或可迭代对象,第二个参数是一个映射函数,用于对每个元素进行处理。假设我们需要创建一个列表,其中包含多个对象,每个对象的和属性都等于其在数组中的索引。我们可以使用方法来实现这一点,如下
2024-10-25 10:36:33
293
原创 使用 `window.postMessage` 实现 `iframe` 跨域通信
通过使用,我们可以安全地实现iframe与父页面之间的跨域通信。这种方法不仅可以更新父页面的 URL,还可以用于其他需要跨域交互的场景。确保在实现时遵循安全最佳实践,以保护用户数据和隐私。
2024-10-22 11:51:20
312
原创 Vue 3 中 async/await 不起作用的常见错误及解决方案
然而,如果不正确使用,可能会导致一些不易察觉的错误。本文将探讨一些常见的错误例子,并提供相应的解决方案。通过避免上述错误,我们可以确保我们的异步代码既高效又健壮。是建立在 Promise 之上的,因此确保你的异步操作返回 Promise,并且在必要时使用。在这个例子中,如果在处理数据时发生错误,这个错误不会被捕获,因为它没有被放在。提供的同步代码风格,同时避免常见的异步编程陷阱。来处理可能发生的错误。,这会创建一个不必要的 Promise 链。都是异步操作,但是它们没有被声明为。在这个例子中,尽管使用了。
2024-10-21 09:06:03
974
原创 如何在 Maven 项目中从 Oracle JDK 切换到 OpenJDK
OpenJDK 是一个免费且开源的 Java 开发工具,功能几乎与 Oracle JDK 相同。本文简要介绍如何在 Maven 项目中从 Oracle JDK 切换到 OpenJDK。
2024-09-26 08:49:29
486
原创 MyBatis中<collection>标签传递多个参数的高级用法
在使用MyBatis进行数据访问层开发时,我们经常需要处理复杂的数据关系,尤其是一对多的情况。本文将探讨如何利用MyBatis的标签来传递多个参数,以及如何配置这些参数以实现高效的数据查询。
2024-09-20 09:33:09
1557
原创 Nginx漏洞修复:在应用程序中发现不必要的 Http 响应头
最近拿到一份网站的安全报告,其中有一个漏洞是说“在应用程序中发现不必要的 Http 响应头”,也就是在响应头中出现了下方的信息,有泄漏服务器信息的风险,因此在此记录一下解决过程。
2023-12-29 08:43:10
1058
1
原创 uni-app获取URL路径变量的方式
今天在使用uni-app,如何在Statistics这个组件中获取type=com这个路径变量成了难题,在此记录一下在uni-app中获取路径变量的方式。
2023-08-14 00:17:38
1961
原创 用crontab替代systemctl在启动Linux时同步启动java程序
使用systemctl倒是可以在重启linux时同步启动java程序,但是java中的log4j日志会无法生成日志文件。如何删除systemctl的服务配置crottab在重启linux时同步启动java程序。
2023-08-07 18:19:35
291
原创 el-table 如何合并单元格
el-table中的rowspan、colspan含义参考在使用el-table合并单元格时发现官方文档中对于rowspan、colspan两个栏位的含义并没有做过多解释,在此记录一下其含义。
2023-07-31 17:56:10
1504
原创 Git 如何调整 commit 的顺序
今天测试了git hooks,产生了大量的commit,而后又进行了正常的commit,因此在这里是想要调整一个commit的顺序然后再删除掉测试commit。在找解决方案的时候其时发现不用先调整顺序,直接通过交互式git rebase就可以直接删除某些commit。
2022-12-04 17:34:36
1651
原创 一键将Web页面保存至Anki
发布完博客后会添加至Anki协助自己强化记忆,但是一次次的重复动作让我觉得厌烦,因此有了写这个脚本的想法:在Web页面添加一个按钮,用来触发向Anki添加卡片的动作。该脚本发布在可通过油猴安装。
2022-12-02 23:05:08
715
原创 【D3.js】2.3-向散点图的 Circles 添加标签
【D3.js】2.3-向散点图的 Circles 添加标签跟条形图一样,添加标签来增加图形的表现力。
2022-12-02 15:38:05
281
原创 【D3.js】2.2-给 Circle 元素添加属性
【D3.js】2.2-给 Circle 元素添加属性上章节中虽然添加了circle,但是因为缺少某些属性设置而显得不可见,在此章节中将学习circle的cx、cy、r属性。
2022-12-02 15:28:32
852
原创 【D3.js】2.1-使用 SVG Circles 创建散点图
【D3.js】2.1-使用 SVG Circles 创建散点图前面的章节主要是介绍如何通过D3制作出条形图,接下来将学习如何通过D3制作散点图。
2022-12-02 15:16:17
410
原创 【D3.js】1.20-给 D3 元素添加工具提示
【D3.js】1.20-给 D3 元素添加工具提示继续增强交互性:给元素添加悬停提示。more。
2022-12-02 15:08:11
595
原创 【D3.js】1.19-给 D3 元素添加悬停效果
【D3.js】1.19-给 D3 元素添加悬停效果为了让图形有交互的效果,可以通过CSS为元素增加悬停效果。
2022-12-02 15:01:56
568
原创 【D3.js】1.16-更改 SVG 元素的颜色
【D3.js】1.16-更改 SVG 元素的颜色至此,一个较为完整的rect图已经完成了,但是所有的rect都是黑色。more。
2022-12-02 14:28:53
811
原创 【D3.js】1.13-动态设置每个 Bar 的坐标
【D3.js】1.13-动态设置每个 Bar 的坐标虽然创建了多个rect,但是都重叠在一起,如何将他们分列开来呢?
2022-12-01 17:37:05
310
原创 HTTP 消息头
在配置Nginx时遇到一些Host、X-Real-IP、X-Forwarded-For概念,这些都是HTTP的基本概念,在此学习记录一下。
2022-11-16 15:23:14
1325
原创 Nginx 反向代理
现在有一个Java写的接口,是发布在8081端口上的;但是本机只对外开放了80端口,因此需要将http://127.0.0.1/api指向http://127.0.0.1:8081。more。
2022-11-16 11:03:26
1251
原创 《数据结构(C语言版)》笔记-1.1 什么是数据结构
学一学数据结构。就是一堆砖头,你拿它垒成垒成一棵树、一个图画或者就那么随意地扔在地上。以上,一个砖头就是一个数据,垒成树就是树结构,垒成一幅画就是个图结构,随意地扔在地上就是散列结构。
2022-10-22 20:10:38
225
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人