自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

高山仰止,景行行止

用于记录自己的学习过程,在自己需要的时候也可以随时查看

  • 博客(182)
  • 资源 (3)
  • 收藏
  • 关注

原创 java 递归读取前10个匹配的文件所在的全路径

有个需求:在连接ftp成功后,读取指定目录下匹配正则表达式的前10个文件。很显然这个需要使用递归,因为会有不同层级的文件目录,不能写死来处理。

2024-09-18 10:49:36 204

原创 读取CSV中文件报ArrayIndexOutOfBounds异常

有个需求要将csv文件入库,之前测试的文件都是可以正常解析入库的,但新提供的一个csv文件读取的时候捕获的异常信息就总是提示:Index 1 out of bounds for length 1。

2024-09-14 15:02:59 271

原创 查询MySQL数据库所有表名及表结构等信息

之前没有做过这种很基础的需求:查询表结构等信息,这里记录下。

2024-09-14 14:43:21 255

原创 post请求中有[]报400异常

发现只要post请求参数里面有[],就会报400的错误

2024-09-10 14:30:32 418

原创 读取FTP中不同文件格式的文件流后导出到浏览器

有一个新的需求,前端提供下载的入口,后端能将指定了全路径的各种文件格式的文件下载到浏览器。对于压缩的zip文件格式需要解析后写入到txt文件格式的文件中,其他的写入原本的文件格式的文件中。

2024-08-26 14:39:13 567

原创 javax.validation.constraints对请求体进行统一校验

在处理请求的时候,通常需要对比填参数进行校验,如果在controller层一个一个的写校验就很麻烦,于是就有了javax.validation.constraints包。

2024-04-28 17:55:10 599

原创 若依集成seata分布式事务(AT模式)并以nacos作为配置中心和注册中心(含踩坑)

由于使用的是若依的框架,在若依的官网也有说明seata的使用方法,但是自己在写demo的时候,是想结合项目来实现demo,不过seata在本地的部署是参考了和最终在不断的踩坑中,部署和测试完成!

2024-04-28 16:20:28 1751

原创 (JDK11)根据文件的Url输出该文件的Base64

和外部对接的时候需求要把一个文件的url输出为base64码,而我使用的是jdk11,可以换下Base64的文件

2024-04-18 11:28:17 227

原创 若依框架集成seata分布式事务的一些幺蛾子

a服务调用b服务,a和b都是插入操作,a服务先插入成功,之后openfeign调用b服务的插入操作,b服务插入失败(故意缺少必填参数),a一直无法回滚

2024-03-26 10:32:47 1176

原创 org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token found character ‘@‘

由于需要把application的配置文件挪到nacos上,本地只剩下bootstrap的文件,所以就改成了多环境profile的配置,改完之后是可以正常启动的,但当我第二天再次启动的时候,就报错了。

2024-03-21 17:23:35 588

原创 若依Cloud项目配合nacos进行多环境profile的配置

最近做的用若依改造的一个项目要把里面的配置挪到nacos的配置中心,之前用过apollo做配置中心,nacos用的很少,而且是自己从头做的那种,而自己想要实现的效果是本地启动和到测试,预发,生产环境启动的时候,都不需要修改任何代码,直接部署就行,自己参考多个博客,和自己的琢磨,实现了自己想要的效果。

2024-03-14 11:13:43 1992

原创 来个切面日志打印请求和响应信息

为了偷个懒,不用每次在请求接口和响应信息的时候都打印一下日志信息,索性就用切面来实现,这样爽歪歪。-------------你知道的越多,不知道的越多--------------就这样就可以了,很简单,却很方便排查问题。

2023-08-22 16:51:25 292 1

原创 MAC 查看被占用的端口

解决mac端口占用的问题

2023-08-22 16:42:06 393

原创 使用Docker从0开始在Linuex部署springboot项目(图文并茂)

在腾讯云新买的洁白如新的云服务器,想要使用docker去部署springboot项目,特此记录!

2023-06-13 16:51:31 1337

原创 RestTemplate发送HTTP请求

之前对发送http请求,使用过okhttp,还有httpclient等,这次就直接使用springboot的RestTemplate了。

2023-06-12 11:44:57 1043

原创 swagger实现在线接口文档

我这里使用的是SpringFox,它是 spring 社区维护的一个非官方的开源的API Doc的框架,Marty Pitt编写了一个基于Spring的组件swagger-springmvc,用于将swagger集成到springmvc中来, 它的前身是swagger-springmvc,可以将我们的Controller中的方法以文档的形式展现。SpringFox 3.0.0 发布(突破性的变更版本),支持OpenApi 3.0.3,有springboot的整合的starter,使用更便捷。

2023-06-12 10:43:48 1492

原创 mybatis出现There is no getter for property named ‘Id‘ in ‘class com.baomidou.mybatisplus

乍一看这个bug说的很清晰,就是没有名为id的属性的getter方法,但是我们是用的lombok的@Data注解,默认是有的,为啥说没有,所以这个错误提示信息是有点模棱两可的,于是查了几篇类似错误的文章和解决办法,这样的对象,所以就报错了,但这个bug信息我还不知道为啥会提示id没有getter方法,后面有时间再梳理一下吧。所以我的错误就在于用错了方法,没有理解各个方法之间的差异。------- 你知道的越多,不知道的越多--------说的比较符合,我一看确实和我的用法是一样的。

2023-05-16 10:03:43 4047

原创 Unable to interpret the implicit parameter configuration with dataType: String, dataTypeClass: class

虽然不影响系统正常运行,但作为一个有代码洁癖的人自然忍不了这样的警示信息,这个是swagger包下的日志信息,其中有一个。---------知道的越多,不知道的越多---------------,都加完之后,这样的提示信息就不没有了。在所有使用这个注解的地方,增加一个属性。

2023-05-09 14:07:09 3060

原创 个人所得税年度应纳税额抵扣-云服务器ECS入门-考试题及答案-申报更正流程

2月的时候朋友给我说参加阿里云的云服务器ECS入口考试通过后可以抵扣个税,我当时知道这个,给我说可以抵扣大概360,我心想360也是钱,结果后面一忙就给忘记这事了,前几天忽然想起来,再不弄就快到6月30号了就来不及了,索性今天晚上下班弄一下。

2023-05-05 21:43:44 1533 2

原创 Springboot启动之自定义run方法

之前分析的[Springboot启动过程的源码分析中](https://blog.csdn.net/fhf2424045058/article/details/127654668)给自己留了一个扩展作业:执行自定义的run方法,此方法在B.7、调用运行器简单分析过,今天咱们就来自定义Run方法试试。

2022-12-29 13:15:49 1551

原创 Springboot延伸之自定义Banner

前几周陆陆续续花了5万多字写了我读到的[Springboot启动过程的源码](https://blog.csdn.net/fhf2424045058/article/details/127654668),收获颇多,其中给自己留了扩展的作业。我们每次启动Springboot的时候,都有一个Spring的Banner,读源码的过程中可以得知我们可以自定义属于自己的Banner,所以这就来把扩展的作业交上!

2022-12-29 10:40:01 625

原创 Mysql的MVCC知多少(隐藏字段,undolog版本链和ReadView)

其实自己之前对MVCC知之甚少,总觉得是一块很难啃的骨头,有点内惧,但当你真的掌握之后,就发现打开了一扇大门,豁然开朗,鸟语花香~~

2022-12-21 16:42:04 1147

原创 浅谈ReentrantLock的公平锁和非公平锁的区别

最近在看java并发编程这本书,已经看了点ReentrantLock的源码,以及之前有面试官问,公平锁和非公平锁有啥区别,我就只是从源码层面说了一下区别,但在性能上也有区别,今天就来说道说道。

2022-12-21 13:08:08 816

原创 说说Spring事件发布机制

在最近分析和写的SpringBoot源码分析([面试官:你说说Springboot的启动过程吧(5万字分析启动过程)](https://blog.csdn.net/fhf2424045058/article/details/127654668))中,给自己留了几个扩展内容,其中一个是Spring的事件机制,在分析源码的过程中,也是大量使用了事件机制,在我分析的这篇博客中,有不少地方都运用了事件发布机制,所以本文的目的是从SpringBoot中学习到事件的发布流程,并自己写一个事件发布用于以后得业务。

2022-12-15 20:00:00 1169

原创 ConversionService转换服务使用

在最近分析和写的SpringBoot源码分析中,给自己留了一个使用ConversionService的作业,这就来补作业了~

2022-12-12 17:55:56 597

原创 小试牛刀:jdk8的Map新方法之computeIfAbsent、computeIfPresent和putIfAbsent

最近一个多月在分析SpringBoot源码有一个关于Map的操作方法:computeIfAbsent,这个方法我以前的确是没有用过,看了一些别的大神写的demo和自己的理解也写了一下,以后可以用在开发中

2022-12-12 14:22:49 633

原创 面试官:你说说Springboot的启动过程吧(5万字分析启动过程)

写这篇博客的初衷的确就是面试官曾经问我的面试题,我支支吾吾,不知所云,总之就是,我没看过这个源码,这不,我就来补课了。

2022-12-12 00:22:44 2047

原创 JVM垃圾回收算法

都说艺术源于生活,殊不知科技也源于生活,我们平时生活会产生垃圾,而jvm工作中也会产生垃圾,那么jvm产生的垃圾是什么?回收的区域有哪些?是如何回收的?回收之后去了哪里?回收算法有哪些?今天就来说道说道!

2022-11-14 18:38:56 1889

原创 java类加载和双亲委派模型浅说

之前被问到双亲委派模型和如果没有此模型会导致什么问题,我去,一下子懵了,但下来细想,这不就是问的此模型的优势嘛,我竟然没有答出来,应该是我紧张了,自以为把此模型掌握的很扎实,实则不然,所以再来整理一下相关的知识点。

2022-10-28 15:21:59 672

原创 关于redis和mysql数据一致性的思考

如何保证缓存和数据库数据一致性的问题,这是一个值得思考的问题~

2022-10-20 14:46:05 1619 1

原创 不得不了解的Dubbo的SPI机制

由于最近在看dubbo,对里面提到的SPI一直不懂是什么意思,因为之前自己在网上搜索的时候,直接搜索的是SPI,导致看到的文章和我心里想到不一样,昨天一想我应该搜索Dubbo SPI这才揭开了我想要学习的SPI的神秘的面纱。废话说完了,来看一下到底什么是SPI吧!当然此博客的内容是在看了本文提到的参考博客的前提下的理解,说的不对的地方还请各位大佬不吝赐教!

2022-10-11 11:46:29 913

原创 M1多版本JDK的切换

由于今年9月之前最新的jdk版本是17,于是下载就进行了安装,但是当我启动我本地的tomcat之后,发现使用的是jdk17,但项目是jdk8,所以我需要切换为jdk8,那么就有了这篇文章诞生的理由了。

2022-10-10 10:41:37 495

原创 GitHub搜索技巧找到好项目

众所周知,github上有很多开源的好项目,但如何在茫茫hub上找到自己想要的好项目需要一定的技巧,而github恰巧提供了很好的搜索功能供我们发现自己想要的资源。

2022-10-08 10:33:26 8176

原创 java线程池杂谈(线程池创建和运行)

继之前写过阿里编码规约对线程池的创建,关于线程池还想再写写自己的理解。1、为啥要有线程池2、线程池怎么创建3、线程池是怎么运行的4、Executors创建线程的弊端下面来一一说一下自己的理解(有说的不对的还请同学不吝赐教)

2022-09-28 23:52:27 1624

原创 不同JDK的String的结构和长度的变化,字节码指令分析字符串拼接效率

不同JDK版本的String的结构和长度的变化,字符串拼接效率通过字节码指令进行分析。

2022-09-28 11:07:08 652

原创 python使用xmindparser解析xmind文件并统计测试案例个数

首次使用python来提供工作的效率:解析xmind

2022-07-25 19:16:50 2109 1

原创 自己动手写java虚拟机(第一话)

使用go语言,自己手写一个java虚拟机,体验造物主的赶脚~

2022-07-19 21:09:57 1122

原创 M1 安装iterm2时无法操作

Iterm2安装Oh-my-zsh遇到的闪退问题

2022-07-07 11:33:58 1584

原创 M1安装gradle查看版本后失败的解决办法

M1安装gradle后查看版本失败如何解决

2022-07-06 16:25:48 1855

原创 Mac M1配置iTerm2+oh-my-zsh配色&补全&高亮命令

本文目录一、序言二、参考博客:三、配置前后效果四、安装和配置iterm24.1 下载4.2 配置4.3 设置热键4.4 iterm2配色方案五、安装Homebrew六、安装Wget七、安装新版的Zsh八、安装oh-my-zsh九、配置主题十、命令补全十一、语法高亮一、序言去年10月下旬买了mac之后,就一直想配置成自己要的效果,但最开始买回来之后,配置iTerm2,但相关包没有下载成功,就导致没有配置成自己想要的效果,所以上周不忙的时候又重新配置了一下,终于配置成功了。所以特此记录。安装的前提,最好

2022-03-09 14:56:31 13805 5

ruby-2.7.1.tar.gz

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,此包是redis安装过程中需要的

2020-04-24

twemproxy-master.zip

Twemproxy通过引入一个代理层,可以将其后端的多台Redis或Memcached实例进行统一管理与分配,使应用程序只需要在Twemproxy上进行操作,而不用关心后面具体有多少个真实的Redis或Memcached存储,有了Twemproxy,客户端不直接访问Redis服务器,而是通过twemproxy 代理中间件间接访问。此包是用于安装redis的中间件Twemproxy需要的最主要的包

2020-04-24

automake-1.16.2.tar.gz

Twemproxy通过引入一个代理层,可以将其后端的多台Redis或Memcached实例进行统一管理与分配,使应用程序只需要在Twemproxy上进行操作,而不用关心后面具体有多少个真实的Redis或Memcached存储,有了Twemproxy,客户端不直接访问Redis服务器,而是通过twemproxy 代理中间件间接访问。此包是用于安装redis的中间件Twemproxy所需要的包

2020-04-24

空空如也

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

TA关注的人

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