- 博客(36)
- 收藏
- 关注
原创 Git Squash在 IDEA 中精准多选并 Squash
场景复现:本地调试时疯狂提交了 9 次,Git 历史惨不忍睹。在不借助命令行黑屏的情况下,如何用 IDEA 自带的 Git 面板安全地完成Squash(压缩合并)?
2026-08-10 16:15:48
224
原创 Spring Boot 整合 Caffeine 本地缓存实战
步骤内容1引入caffeine依赖2+ 配置Bean3读方法加@Cacheable,写方法加4定时任务兜底清除,防止脏数据5单元测试通过 Mock 验证缓存命中/失效行为本地缓存适合读多写少、对一致性要求不高的场景。如果业务需要强一致或跨实例共享,应考虑 Redis 等分布式方案。直接复制即可发布。
2026-07-31 11:08:03
190
原创 could not determine a constructor for the tag !vfY_MT5D=tYiMq%3FtKH%3F
一开始我很懵逼,去看了下这个配置,原来是一个占位符,这个密码被换了,刚好又是!开头,这就触发了springboot在application.yaml里面的规则了。未找到 -> 抛出 ConstructorException。进入构建阶段,查找映射到 vfY_MT5D…今天用springboot启动的时候遇到了个错误。
2026-07-29 17:05:51
19
原创 VSCODE如何使用MCP
就可以开始聊天了,mcp有里面有的服务就可以调教ai 或者获取了。mcp有挺多个类型的,http啊各种。在vscode1.116 release中。右上角点开chat,有设置的图标。生成后有个mcp.json。然后点击,就可以添加了。
2026-04-16 15:29:16
57
原创 vs code 使用skills
作为一个经常用到的技能,然后封装成skills,减少繁琐的提示词。这就是skills的概念,可以理解成一个规范,ai就利用这个规范来生成你想要的东西。假设我现在有个需求,是每天都要做的,一年就要重复365次。这个时候我把他封装成skill.md。在skills下面也可以添加多个文件夹 来实现多个skill。后面就可以生效了 完善你的要求,让ai帮你干活。让他去帮我干,是不是美滋滋?
2026-03-04 14:39:00
155
原创 Skills 使用指南 从零入门
创建 Skill 的正确流程:初始化项目→ 使用/init创建获取 skill-creator→ 从 GitHub 下载到查看现有 skills→ 使用/skills命令创建新 skill→ 在下创建目录和 SKILL.md开发和测试→ 编写文档和脚本,在 Chat 中测试分享→ 通过 Git 或直接分享目录使用/init初始化项目使用/skills查看和管理 skillsSkills 直接放在目录。
2026-03-04 10:10:27
2905
原创 excel比较两列内容差异怎么弄,excel两个列进行数据比较。找A列有B列没有的数据显示到C列
我要对比B的新数据是否包含A的全部旧数据,这个时候我就需要用这个公式。如果B数据在A列中找不到,显示#/A。如果B数据在A列中找到,显示B的值。
2025-11-17 10:37:13
405
原创 jpa实现多条件查询
最近有个项目使用jpa,但是简单的一些写法是传固定的三四个参数来查询,我们可以直接在dao层直接接收参数就可以,但是如果是不固定参数的话,这就要使用一个对象来传参了。
2025-01-20 16:32:10
599
2
原创 如何搭建Hexo博客,并发布到github上
1、安装好git2、安装好npm、node4、安装hexo-cli5、博客初始化:创建一个文件夹,进入该文件夹。
2024-12-13 16:30:43
802
原创 mysql求比例问题
avg(avg(if(c.action=‘confirmed’,1,0) 是指 每一行的数据,如果是confirmed,就会返回1,否则就会返回0,然后计算行数的平均值,得出的就是一个比例问题。(confirme 占 总数的比例)用confirmed的数量,除以总数,得出的就是一个比例,但是仔细一想,我们有个高级的做法,就是用avg(if)去处理。ronnd(x,2) 是指保留2位小数。
2024-10-29 15:10:12
283
原创 ThreadLocal中的数据,确保数据不串
之前有业务同学和我反馈,在生产上遇到一个诡异的问题,有时获取到的用户信息是别人的。查看代码后,我发现他使用了 ThreadLocal 来缓存获取到的用户信息。我们知道,ThreadLocal 适用于变量在线程间隔离,而在方法或类间共享的场景。如果用户信息的获取比较昂贵(比如从数据库查询用户信息),那么在 ThreadLocal 中缓存数据是比较合适的做法。但,这么做为什么会出现用户信息错乱的 Bug 呢?
2024-06-14 10:56:39
340
原创 Git将当前分支暂存切换到其他分支
我现在在A分支进行开发,但是领导有个突发任务叫我去B分支进行修改个配置文件的值,我心想那我现在开发的代码咋办。我总不能提交并push上去吧,这样显得我很low啊,领导会觉得我技术很菜啊。
2024-04-26 17:04:13
873
3
原创 java在spring环境中使用策略模式
我们最近要开发一个多方支付,支持支付宝支付、微信支付、银联支付、等等的多方,以后说不准还有applePay、等等多种方式进行支付。一开始写if else确实没毛病,但是仔细一想,好像不符合我们设计模式的开闭原则,下面就来看看我们在spring环境中如何使用策略模式。
2024-04-24 10:04:37
355
原创 java8用stream把list转换成map
我们想要将用户列表转换成一个Map,其中键是用户的ID,值是用户对象本身。但是这样有个问题,如果userId是重复的话就会抛异常。
2024-04-10 14:14:43
437
原创 IDEA新建文件时自动添加作者及日期信息
idea的File -> Settings -> Editor -> File and Code Template。IDEA新建文件时自动添加作者及日期信息。
2024-03-26 15:54:58
1804
原创 docker拉取镜像报错 read: connection reset by peer
vim /etc/docker/daemon.json中做以下设置,没有这个文件的可以自己创建。因为是镜像地址失效,或者本地的ip有做了策略拦截,通不过去。以前docker 直接pull就下来了。然后 启动这个daemon。然后重启docker服务。
2024-03-15 10:50:37
15860
11
原创 window如何添加公私钥,实现ssh克隆git的代码
添加好过期时间,id_rsa.pub里面的那串,复制进去粘贴,就可以了,就可以直接ssh 进行克隆代码了。2、有些出现https检测啥的。1、减少频繁输入密码。
2024-03-06 17:48:29
555
原创 使用easypoi导出excel设置表头样式
使用easypoi导出excel设置表头属性之前使用easypoi导出excel的时候,没太关注这个表头的样式设置,直到前几天看到个需求,需要表头设置蓝底白字,懵了。嘿嘿,不过百度了一下,懂了一点点。导入easypoi <easypoi.version>4.0.0</easypoi.version> <!--easyPOI工具类 --> <dependency> <groupId>cn.afterturn</gr
2022-05-24 10:41:15
8970
原创 springboot项目通过dockerfile打镜像
流程:我们开发的项目,其实正常的流程应该是通过jenkins拉取gitlab上的代码,通过mvn install等命令构建jar包,一般是springboot/springcloud项目,通过mvn package,打成jar包,然后通过Dockfile,把jar包构建成镜像,再通过镜像进行容器启动步骤:打成jar包准备Dockerfile配置,构建镜像docker images查看镜像是否生成然后进行启动容器开防火墙、安全组、是否正常访问路径鉴于学习为目的,我手动上传了sms-adm
2022-01-14 17:57:06
601
原创 xxljob入门 以及整合到自己的项目
搭建调度中心1、官网下载代码git地址:https://gitee.com/xuxueli0323/xxl-job2、导入sql语句调度数据库初始化SQL脚本- 位置为: /xxl-job/doc/db/tables_xxl_job.sql3、修改数据库地址spring.datasource.url=jdbc:mysql://localhost:3333/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=t
2021-09-13 16:40:17
1521
原创 window下安装rabbitmq
rabbitmq官网下载:https://www.rabbitmq.com/install-windows.htmlerlang环境下载:https://www.erlang.org/downloads我的版本:3.95—24.0先安装erlang,再安装rabbitmq安装过程,next 到底。在命令行CMD中,进入rabbitmq安装目录的sbin,执行以下命令:D:\soft\mq\rabbitmq_server-3.9.5\sbin>rabbitmq-plugins enable
2021-09-13 16:29:34
403
2
原创 springboot使用@Valid优雅地对字段进行判空、限制
检验字段升级版接着之前的if(a ==null)的判断方式,得益于勇哥的指导,我又改进了一版,去掉aop等。。。只需要一个全局异常类,两个校验类的maven坐标即可完成准备工作springboot项目校验工具坐标全局异常类开始:在springboot项目加入以下maven坐标 <!--校验工具--> <dependency> <groupId>org.hibernate</groupId>
2021-07-23 10:25:36
3787
2
原创 nginx实现负载均衡
nginx实现负载均衡环境准备开始测试环境准备nginxjava项目linux服务器开防火墙服务器开端口开始准备两个springboot的项目,启动,一个端口为8804,一个为8805nohup java -jar 8804.jar >8804.log 2>&1 &nohup java -jar 8805.jar >8804.log 2>&1 &nginx配置 http { upstream dalaoyan
2021-07-20 10:24:12
162
原创 个人对于Oauth2.0协议的理解
参考文献:https://www.cnblogs.com/cjsblog/p/9174797.htmlhttps://datatracker.ietf.org/doc/rfc6749/?include_text=1oauth2是啥:是一个行业的标准授权协议,主要用来授权第三方应用进行获取有限的权限oauth能干嘛oAuth:让第三方网站具有自己的权限,获取自己的资料(微信授权给知乎登录)实现原理实际上就是一个授权机制,最终目的是给第三方应用颁发一个有时效性的令牌,使得第
2020-12-21 17:21:41
372
原创 mysql的分组查询
mysql的分组查询最近在复习mysql,那就说说分组函数的使用吧基本语法select 分组函数,列(要求出现在group by后)from 表where 筛选条件(原始表有,即分组前)group by 分组的列表having 分组后的筛选order by 子句那怎么来区分这个分组前、分组后1.分组前就是数据库的表存在的(旧列),就理解为分组前2.分组后就是你新分组出来的数据(新列),再进行筛选下面是一些案例...
2020-11-16 00:25:48
303
原创 springboot输出乱码问题
1.前几天脑抽,改了下idea的配置,然后今天弄了个springboot项目,刚建好,然后想测试一下controller看看端口访问正常不,没想到乱码了2.第一种解决方案:@GetMapping(value="/lcj",produces = "text/plain;charset=utf-8")加了这个网页可以解决,但是postman测试,swagger测试,依旧乱码第二种:在app...
2020-04-08 00:11:24
1532
原创 idea如何使用lombok
首先idea的,settting->plugins->下载好Lombok插件,接着maven引入jar <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <vers...
2020-03-11 21:30:03
143
原创 怎么永久的设置idea的 maven
最近有的小伙伴遇到了个问题,就是新项目,配置的还是以前的maven位置,所以热心市民来告诉你如何一劳永逸。直接上图:下一步:这样就可以用自己的maven啦~~~当然好人做到底,把阿里的镜像也放上来maven更改镜像路径为阿里镜像,以便下载速度快1.maven更改镜像路径为阿里镜像,以便下载速度快2.maven每更新一次镜像地址,都会重新下载一次包3.怎么配maven链接阿里云...
2020-03-06 09:21:33
1492
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅