<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[奔跑的砖头]]></title><description><![CDATA[落叶归根...]]></description><link>https://blog.youkuaiyun.com/zhouwei8725</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zhouwei8725]]></copyright><item><title><![CDATA[深度解析 Superpowers：我为什么开始强制让 AI 按工程流程写代码]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/159419912</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/159419912</guid><author>zhouwei8725</author><pubDate>Tue, 24 Mar 2026 11:30:25 +0800</pubDate><description><![CDATA[AI开发辅助工具Superpowers强制工程师工作流程，解决AI编码常见问题。该工具通过skills目录将开发流程规范化，包括brainstorm、TDD、git worktree等强制步骤，要求AI必须按顺序执行。核心优势是让AI像专业工程师一样工作：先写测试再实现、隔离开发环境、系统化debug。虽然初期感觉流程繁琐，但能显著减少返工时间，特别适合长期项目和团队协作。安装简单，支持主流AI开发工具，通过规范化流程提升代码质量而非单纯追求编码速度。]]></description><category></category></item><item><title><![CDATA[IDEA 实现正则替换方法并保留参数]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132176459</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132176459</guid><author>zhouwei8725</author><pubDate>Tue, 08 Aug 2023 21:49:46 +0800</pubDate><description><![CDATA[在IntelliJ IDEA中，利用正则表达式进行字符串替换并保留参数是一项非常有用的技能。通过捕获组和正则表达式的结合，你可以在代码重构和优化过程中节省大量时间，同时确保代码的正确性和完整性。无论是简单的文本替换还是复杂的模式匹配，IDEA都提供了强大的工具来帮助你轻松完成这些任务。有时候，我们需要在替换过程中保留某些参数，以确保代码逻辑的正确性。在正则替换中，你可以使用捕获组（capturing group）来提取并保留特定的内容，然后在替换中使用这些内容。今天在开发中有个需求，要把所有的。]]></description><category></category></item><item><title><![CDATA[搭建一个Hexo博客并用vercel部署]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/130847303</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/130847303</guid><author>zhouwei8725</author><pubDate>Wed, 24 May 2023 15:04:12 +0800</pubDate><description><![CDATA[Hexo 是一款基于Node.js的静态博客生成器，具有简单易用、快速高效、丰富主题、插件支持等特点，适合用于个人博客、技术文档、个人网站等场景。而且基于 markdown 编写起来非常顺畅，个人非常喜欢这个博客。这次下定决心搭建一个 Hexo 博客来实现我日常分享的一个小博客网站。]]></description><category></category></item><item><title><![CDATA[IDEA 插件收集]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973643</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973643</guid><author>zhouwei8725</author><pubDate>Tue, 22 Mar 2022 16:39:00 +0800</pubDate><description><![CDATA[jclasslib-bytecode-viewer Java 类文件的字节码查看器


rainbow-brackets 彩虹括号


MybatisX Mybatis生成器


translation 翻译


CamelCase 驼峰转换


Codota 智能提示代码片段


Maven Helper


Lombok


GenerateAllSetter



...]]></description><category></category></item><item><title><![CDATA[Spring Boot AOP 实践]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133061915</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133061915</guid><author>zhouwei8725</author><pubDate>Fri, 04 Mar 2022 13:41:00 +0800</pubDate><description><![CDATA[面向切面的程序设计。嗯..

其实，面向切面编程(Aspect-oriented programming，AOP，又译作面向方面的程序设计、剖面导向程序设计)和 OOP 一样都是计算机科学中的一种程序设计思想。例如：日志收集功能。传统的 OOP 虽然也能实现，但 AOP 思想为我们打开了另一扇窗。AOP 将项目的日志收集功能拆分出来成为一个关注点(Concern)叫切面也可以 (Aspect)，...]]></description><category></category></item><item><title><![CDATA[Log4j2 打印日志实践]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133014155</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133014155</guid><author>zhouwei8725</author><pubDate>Tue, 01 Mar 2022 23:35:00 +0800</pubDate><description><![CDATA[Apache Log4j 是一个基于 Java 的日志记录工具。它是由瑞士程序员 Ceki Gülcü 于 2001 年开发的，现在则是Apache软件基金会的一个项目。 Log4j是几种Java日志框架之一。Log4j 团队创建了 Log4j 的继任者，版本号为 2.0 的新版本。Log4j 2.0 着重于 Log4j 1.2、1.3、java.util.logging 和logback中的...]]></description><category></category></item><item><title><![CDATA[多 JDK 导致 jmeter 无法保存的解决办法]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973620</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973620</guid><author>zhouwei8725</author><pubDate>Wed, 23 Feb 2022 17:47:00 +0800</pubDate><description><![CDATA[今天在使用 jmeter 的时候发现怎么也保存不了也保存不了新的项目，我就很奇怪啊。之前一直好好的为啥突然不行了。我的日志查看面板里面一个大大的报错引起了我的注意
// 软件日志返回的
2022-02-23 16:38:11,718 ERROR o.a.j.JMeter: Uncaught exception in thread Thread[AWT-EventQueue-0,6,main]
j...]]></description><category></category></item><item><title><![CDATA[UniApp + SpringBoot 实现微信支付和退款]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133108961</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133108961</guid><author>zhouwei8725</author><pubDate>Mon, 21 Feb 2022 13:09:00 +0800</pubDate><description><![CDATA[开发准备

一台用于支付的测试机，必须得是一个安卓机因为需要打支付基座才能使用。
用于编写的后端框架接口的 IDE (IDEA 或者 Eclipse 都可以)
HBuilder X 用来编辑 UniApp 项目的编辑器和编译器
基本的 SpringBoot 的脚手架，可以去 https://start.spring.io/ 或者 IDEA 自带的快速生成脚手架插件。
Jdk 11

微信支付开发...]]></description><category></category></item><item><title><![CDATA[UniApp + SpringBoot 实现支付宝支付和退款]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133014153</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133014153</guid><author>zhouwei8725</author><pubDate>Wed, 09 Feb 2022 15:44:00 +0800</pubDate><description><![CDATA[开发准备

一台用于支付的测试机
用于编写的后端框架接口的 IDE (IDEA 或者 Eclipse 都可以)
HBuilder X 用来编辑 UniApp 项目的编辑器和编译器
基本的 SpringBoot 的脚手架，可以去 https://start.spring.io/ 或者 IDEA 自带的快速生成脚手架插件。
Jdk 11

支付宝支付开发
后端部分


在 SpringBoot 中添...]]></description><category></category></item><item><title><![CDATA[RabbitMQ 六种基本队列模式 ----- 通配符(Topic)]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973616</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973616</guid><author>zhouwei8725</author><pubDate>Fri, 28 Jan 2022 16:06:00 +0800</pubDate><description><![CDATA[这是消息模式的最后一种，通配符模式。总算是都写完了，真不容易。在通配符模式下可以按照 * 或者 # 进行匹配

* 只能替代一个词，例如：*.error.log 或者 *.log
# 可以替代0个或更多的词，例如：#.log

通配符模式和路由模式代码很像，只需要修改发送方式就可。
使用 Java 来实现发送者和接收者


发送者
private static final String EXC...]]></description><category></category></item><item><title><![CDATA[RabbitMQ 六种基本队列模式 ----- 路由(routing)]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973607</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973607</guid><author>zhouwei8725</author><pubDate>Fri, 28 Jan 2022 16:06:00 +0800</pubDate><description><![CDATA[在之前的消息 订阅/发布 模式中已经实现了通过 Fanout 来向所有的接受者广播，在 routing 中就是在 订阅/发布 中增加指定发送的 routing key 即可。下面的图也来自于官方的实例，Q1 和 Q2 绑定到了 X 的交换机上边，Q1 绑定了 orage 的 routing key ，Q2 绑定了  black 和 green 两个 routing key。这样在 p 使用 ro...]]></description><category></category></item><item><title><![CDATA[RabbitMQ 六种基本队列模式 ----- 消息订阅(Publish/Subscribe)]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133011750</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133011750</guid><author>zhouwei8725</author><pubDate>Fri, 28 Jan 2022 16:05:00 +0800</pubDate><description><![CDATA[我们将向多个消费者传递一条信息。这种模式称为“发布/订阅”


**在之前的文章 P 和 C 已经很清楚是什么意思了，这里面的X代表的是交换机(Exchange)。交换机只负责转发消息，不具有存储消息的能力，因此如果没有队列与交换机绑定，或者没有符合规则的队列，那么消息就会丢失**
交换机的类型

Fanout: 广播，发送到每个与交换机绑定的队列
Direct: 定向
Topic: 通配符
...]]></description><category></category></item><item><title><![CDATA[RabbitMQ 六种基本队列模式 ----- 工作队列(Work queues)]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973606</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132973606</guid><author>zhouwei8725</author><pubDate>Fri, 28 Jan 2022 16:02:00 +0800</pubDate><description><![CDATA[工作队列(又名：任务队列)背后的主要思想是避免立即执行资源密集型任务而不得不等待它完成。相反，我们安排任务稍后完成。我们将任务封装为消息并将其发送到队列。在后台运行的工作进程将弹出任务并最终执行作业。当您运行许多工人时，任务将在他们之间共享。


在上图 “P” 是我们的生产者，“C” 是我们的消费者。中间的盒子是一个队列——RabbitMQ 代表消费者保留的消息缓冲区。再工作队列中一个生产...]]></description><category></category></item><item><title><![CDATA[RabbitMQ 六种基本队列模式 ----- 简单消息队列(Hello World)]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132983047</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132983047</guid><author>zhouwei8725</author><pubDate>Fri, 28 Jan 2022 16:01:00 +0800</pubDate><description><![CDATA[RabbitMQ 是一个消息代理：它接受和转发消息。您可以将其视为邮局：当您将要投递的邮件放入邮箱时，您可以确定信件承运人最终会将邮件递送给您的收件人。在这个比喻中，RabbitMQ 是一个邮箱、一个邮局和一个信件载体。


在上图 “P” 是我们的生产者，“C” 是我们的消费者。中间的盒子是一个队列——RabbitMQ 代表消费者保留的消息缓冲区。再简单模式里面一个生产者只对应一个消费者
使...]]></description><category></category></item><item><title><![CDATA[Log4J2 漏洞和 Spring Boot log4j2 临时解决办法]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133062934</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133062934</guid><author>zhouwei8725</author><pubDate>Tue, 14 Dec 2021 10:34:00 +0800</pubDate><description><![CDATA[Springboot Log4j 的不能升级的解决办法,首先排除老版本的 log4j-core ,然后在加个新版本即可。
&lt;dependency&gt;
   &lt;groupid&gt;org.springframework.boot&lt;/groupid&gt;
   &lt;artifactid&gt;spring-boot-starter-log4j2&lt;/artifact...]]></description><category></category></item><item><title><![CDATA[Tess4j 的简单使用]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/108071923</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/108071923</guid><author>zhouwei8725</author><pubDate>Tue, 18 Aug 2020 10:44:57 +0800</pubDate><description><![CDATA[Tesseract 目前是由 Google 进行维护，它是一个开源的 ORC 识别引擎。它最早诞生于 HP实验室。目前我看到的版本是 4.1.1 。他的官网在 https://tesseract-ocr.github.io 。虽然目前为止业内有很多值得令人称赞的 OCR 识别接口，但是这个开源免费还是很不错的一个引擎，它能通过训练丰富自己的文字识别。不过我们主要讲的不是这个东西，而且讲了这一堆估计也没有几个人看下去。还是直接进入主题，让我们看看 Java 怎么结合 Tesseract 进行识别文字的。

掏]]></description><category></category></item><item><title><![CDATA[Mac IDEA使用Maven打包jar文件]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/106570825</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/106570825</guid><author>zhouwei8725</author><pubDate>Fri, 05 Jun 2020 15:02:30 +0800</pubDate><description><![CDATA[打开 IDEA 的 Maven 窗口。



选中 package 并点击运行按钮



此时正在执行打包功能



找到左侧 target 文件夹,并右键选择 reveal in Finder



这个时候看到我们已经打包完成了。


]]></description><category></category></item><item><title><![CDATA[uniapp配置scss支持]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132983053</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132983053</guid><author>zhouwei8725</author><pubDate>Mon, 12 Aug 2019 17:16:00 +0800</pubDate><description><![CDATA[在开发 uniapp 的时候发现默认 style 是不支持 scss 模式开发样式，这样的话使用 --status-bar-height 就没有办法变成想要的数值了，这时候就需要开启 scss 支持。


在 HbuilderX 工具 -&gt; 插件安装 找到 scss/sass编译 安装


在 style 中 添加 lang 属性
&lt;style lang="scss"&gt;

 ....]]></description><category></category></item><item><title><![CDATA[更换composer镜像源为阿里云]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/133027659</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/133027659</guid><author>zhouwei8725</author><pubDate>Mon, 15 Jul 2019 13:58:00 +0800</pubDate><description><![CDATA[​		说一说我为什么会更换镜像源，今天我准备给公司的项目添加一个 Excel 导出的功能，需要 PhpSpreadsheet 插件来实现我的功能。输入命令发现提示我  Authentication required (packagist.laravel-china.org):
​		what？这是什么提示我需要用户名。不对啊平常都没有出现这个问题。我就去查百度了发现原来 laravel-chin...]]></description><category></category></item><item><title><![CDATA[Centos7 更换为网易YUM源]]></title><link>https://blog.youkuaiyun.com/zhouwei8725/article/details/132983039</link><guid>https://blog.youkuaiyun.com/zhouwei8725/article/details/132983039</guid><author>zhouwei8725</author><pubDate>Thu, 20 Jun 2019 07:18:00 +0800</pubDate><description><![CDATA[当我们刚刚安装系统的时候 yum 的速度那是真滴慢所以我们就需要一个更加快速的镜像，这时候网易镜像带给我们便捷。下面来一起更换吧！


备份当前的 yum 源
# yum 源在目录 /etc/yum.repos.d/ 下
$ cd /etc/yum.repos.d/
$ cp CentOS-Base.repo CentOS-Base.repo_bak


查看当前的版本然后去网易 centos ...]]></description><category></category></item></channel></rss>