- 博客(108)
- 收藏
- 关注
原创 《函数之恋》
我们是彼此函数空间中的解。x0初始之时,我只是一个点,没有意义,也没有方向。∃yyx直到你的出现,打破了我的单调。fxsinxgyeiωt我是正弦波动,你是复数信号,我们频率不同,却共享同一个时间轴。dtdx−y−kx−y我开始靠近你,不是强迫,而是被吸引。t→∞lim∥xt−yt∥0在无限的时间尽头,我们的距离趋于零。∇Vxy0我们在能量最小的状态中相遇,找到了平衡。
2025-06-10 14:51:35
399
原创 来自宇宙的问候
有人说,那是第一次,人类听懂了另一种智慧生命的语言。无人在意的凌晨三点十七分,一个信号从银河深处传来。“我有有限的能量,并且愿意接受任何接近我的信息。人类第一次接收到外星文明的语言,竟然是——“也许在他们的世界里,这不过是一句‘你好’。一首由复数、积分和极限组成的宇宙之歌。原来“你好”,也可以是一个公式的温度。这不是机器语言,也不是冷冰冰的代码。它不是脉冲,不是噪音,也不是图像。有人说,那不是对话,而是一首诗。如今,监听站依旧每晚打开天线,“我能感知到你的微弱波动。这是情感,是信任,是邀请。
2025-06-10 12:16:48
321
原创 IDEA明明打了Jar包但引入就是报红
首先尝试清除项目缓存,若无效则删除pom文件中相关包的引入代码,重新导入依赖包,最后再次引入该包。这种分步处理方式能有效解决常见的依赖冲突或导入异常问题。
2025-06-04 10:25:39
238
原创 Feign:调用方与被调用方集成的对比及Feign继承的应用
虽然将 Feign 放在被调用方可以快速集成,但从长远来看,这会导致较高的耦合度和较低的灵活性。相比之下,采用 Feign 继承的方式能够有效地降低系统间的耦合度,提高代码的可维护性和扩展性,结合了将Feign放在调用端和被调用端的优点。因此,在设计微服务架构时,推荐使用 Feign 继承作为最佳实践,以确保系统的健壮性和灵活性。
2025-04-19 11:33:59
314
原创 如何使用 Git Revert 撤销合并提交
在使用 Git 进行版本控制时,合并分支是一个常见的操作。然而,有时候我们可能需要撤销之前的合并操作。本文将详细介绍如何使用 git revert 撤销合并提交,即使在合并提交之后还有其他提交。
2024-10-21 11:08:42
1595
1
原创 后端存储流程结构的思考
流程图中,流程节点是多对多的关系,一个当前节点可能连接到多个下一节点,多个当前节点可能连接到一个下一节点。这种关系用算法中的图来描述非常合适,图是比树更复杂的数据结构。
2024-07-22 17:12:59
380
原创 关于各环境配置表数据同步的一种想法
如果各环境表配置同步能遵守规范操作,保持从低级别环境向高级别环境过渡。如果各环境表配置同步不能遵守规范操作,那么id冲突无可避免,特别对于树状结构,其parent_id无法自动生成。同样提供数据比对接口,但是实现麻烦些,需要逐层划归数据,然后逐级比对。其数据对比的环境一般是当前环境和低级环境,低级环境通过jdbc的方式连接并获取数据。诸如菜单、按钮、权限等同步到各个环境往往通过手动获取语句的方式,如果是树状结构配置,很可能存在主键冲突。虽然可以借助数据同步工具,但是依然比较麻烦,需要勾选数据等。
2024-06-29 20:47:23
289
原创 操作日志、审计日志解决方案和思路
现在大部分公司一般使用SpringCloud这条技术栈,操作日志通过网关Gateway提供的Globalfilter统一拦截请求解析请求是比较好的选选择。优点:相对于传统的过滤器、拦截器同步阻塞方案,SpringCloud Gateway使用的Webflux中的reactor-netty响应式编程组件,底层使用了Netty通讯框架,提高了性能。缺点:请求的解析与传统过滤器、拦截器有所不同,特别是获取请求参数与响应参数这块。
2024-06-05 22:12:52
800
原创 记一次RabbitMQ未配置Listener导致的报错
推测原因是未设置acknowledge-mode: manual手动确认消息,而在代码中手动确认了消息。增加配置后问题得到解决。
2024-05-30 19:41:42
396
原创 解决mybatis拦截器注入依赖后为null问题
调试时发现在mybatis拦截器定义的注解@PostConstruct方法中RedisUtils依赖已经注入,但是在拦截器的Intercept方法中redisUtils为null。在配置类中将MybatisInterceptor改成@Bean注入后,Intercept执行时依赖问题解决。需求是在mybatis拦截器中注入RedisUtils用来缓存一些信息。
2024-05-27 22:53:02
522
原创 Mysql8.0.30一次表锁问题的解决
给material_config_field_data表的字段建立全文索引的时,发现该表卡死,然后无法对该表进行任何操作。
2024-05-09 18:30:07
336
原创 关于使用后端实现动态表单功能的心得
需要前端可靠支撑,如前端生成ID或者直接将名称作为表单、字段、选项的唯一识别。:存储表单字段信息,比如字段类型、选项类型、输入框类型、筛选类型(展开类型)、字段排序、是否必填、所属表单ID等。优点:相对Mysql细化结构存储,不用在后端处理大量增、删、改的逻辑。如输入框类型的输入值、选项标签、表单ID、选项ID。:存储字段为选项类型的选项,如选项名、所属字段ID、所属表单ID等。:勾选了哪些选项,需存表单ID、字段ID、选项ID。:使用了哪个表单,并存储表单数据,需存表单ID。
2024-04-21 21:03:42
1052
原创 Java离线视频提取音频+音频提取文案
至于javacv依赖,网上有很多缩减方案,注释部分是可行的缩减方案,至于视频提取视频这里无需安装ffmpeg,只需引入依赖。而vosk需要下载模型方可使用,并且下载比较慢,可先用小模型跑通。
2024-04-21 19:56:25
1812
6
原创 动态ip白名单频繁更改问题解决方案
3. 使用VPN:可以使用VPN来解决动态IP地址的变化问题,VPN可以将动态IP地址转换成一个固定的IP地址,从而使得公网IP地址一直不变。个人感觉是添加域名白名单,访问者的动态ip将被映射成固定域名,动态ip访问变成固定域名访问。域名白名单的作用应该就是处理这样的场景。2. 使用动态DNS:可以使用动态DNS服务,它可以将动态IP地址映射到一个固定的域名,从而使得动态IP地址处理为域名一直不变。1. 使用静态IP地址:可以通过向ISP申请静态IP地址来解决动态IP地址的变化问题,但是这种方法会比较贵。
2024-03-27 00:28:44
1319
原创 leetcode猜数字大小
说实话我也看不懂我的算法,中位法吧,但是0ms通过了。来获取猜测结果,返回值一共有 3 种可能的情况(你可以通过调用一个预先定义好的接口。
2024-03-17 22:02:28
498
原创 leetcode排列序列
找规律,不要急着一簇而就,先用代码解决出首位是几,在数组中下标是几。然后就会发现每次的余数(下一轮首位确定后有多少组合)和乘数(当前首位确定后有多少种组合)是关键,慢慢解决思路就出来了。
2024-03-15 01:54:58
459
原创 leetcode最后一个单词(双指针)
双指针从后向前遍历,i不断递减,j如果是空字符就递减,循环满足一定的逻辑运算后就跳出。代码是经过改进的,减少行数。
2024-03-12 23:43:44
416
原创 Nacos宕机思考
Nacos宕机后,Client端已经缓存在本地服务实例依然可以使用,除非服务不可用或者真实的服实例发生变化。假如已完成流程:服务A、B注册向Nacos注册服务 -> Nacos存储服务实例 -> B服务调用A服务。所以结论是Nacos如果宕机了,不论是临时实例和持久化实例。个人思考,不对之处还请更正。
2024-03-12 17:55:06
975
原创 leetcode找出字符串中第一个匹配项的下标
双指针,在i不断递增的情况下,如果首字符匹配则i停止,接着从子串最后一个字符开始向比较,直至到i,否则i继续递增。
2024-03-10 23:25:34
467
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人