自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 收藏
  • 关注

原创 自用bug收集

#1、getReader() has already been called for this request需求:通过过滤器实现对HttpServletRequest请求体的数据做一些逻辑判断、通过获取request.getReader() 流读取body的详细内容,但是request.getReader() 和 request.getInputStream() 都是只能调用一次,所以抛出上述异常信息(个人猜想:导致在controller层无法取到body数据)。解决:通过继承HttpServletR

2021-07-12 10:43:48 363 1

原创 HttpClient使用

全局路由限制、达到限制时,所有新请求均进入阻塞队列,直到全局有连接被释放。单个路由限制,达到限制时,请求进入阻塞队列,直到路由有连接被释放。建立 TCP 连接的超时时间(如 DNS 解析、三次握手等), 在指定时间内未完成与目标服务器的 TCP 连接建立。从连接池获取连接的最大等待时间(若连接池无可用连接,等待其他请求释放连接的时间) 在指定时间内未从连接池获取到可用连接则抛出异常。在读取或发送数据时,连续等待超过指定时间未收到新数据,也就是数据传输过程中的超时,当超过配置的时间将抛出异常。

2025-03-14 11:06:14 334

原创 PageHelper新发现

今天发现了一个很有趣的现象,接手一个很老的项目springmvc项目、使用PageHelper分页实现常见的后端接口分页功能。但是发现当页码参数大于实际的页码数时、正常不应该返回数据,但是目前确一直返回数据不知道问题在哪里。​定义:当设置为 true 时,允许 pageSize=0,此时分页插件会执行 COUNT 查询但 ​返回所有数据。不知道其含义,但是在项目当中是默认开启的状态、后面一顿搜索查询到了下面的信息才明白原由。:false(禁止 pageSize=0):false(不修正非法参数)

2025-02-27 17:36:35 606

原创 docker部署firefly-III

准备好docker/docker-compse两个命令能够正常执行。

2025-02-08 16:31:31 592

原创 nginx模板文件

在 Docker 化部署 Nginx 时,为了能够通过环境变量动态地更改 Nginx 的配置,经常会引入这个模板文件。Docker 启动后会读取环境变量,替换掉 default.conf.template 中使用的环境变量,生成 default.conf,然后再启动 Nginx。nginx通过读取环境变量完成对nginx.conf的相关代理设置,但是nginx.conf不支持直接读取环境变量、所以使用nginx的模板功能达到相应目的。进入容器内部可看到/etc/nginx/conf.d下生成了。

2024-12-13 11:28:39 550

原创 Docker-Compose环境变量

现状是通过Docker-Compose配置管理系统的各个容器服务、因为是微服务架构所以配置文件很多、但是例如数据库、redis、kafka等配置都是同一份但是需要在多个配置文件做映射。参考地址:https://www.baeldung-cn.com/linux/nginx-config-environment-variables#23-docker-compose。想到spring可以自动读取环境变量的特性、就准备做一个配置文件预置所有公共配置,将配置文件中的配置写入docker容器的环境变量。

2024-12-05 14:11:18 816

原创 analysis-ik分词器

最细粒度划分模式。该模式会尽可能多地切分文本,将文本中的每个可能的词语都切分。找到对应es版本的ik分词器、下载zip后放到。该模式会尽可能少地切分文本。创建相关索引、搜索时用。使用离线安装下载地址。bin目录下执行脚本。(服务器能连通外网)配置文件进行相关修改。

2024-10-17 15:01:27 728

原创 elk部署安装

1、提前装好docker docker-compose相关命令2、替换docker仓库地址国内镜像源参考地址:https://blog.csdn.net/llc580231/article/details/1399796033、写一个docker-compose.yml(4、提前下载好相关镜像。

2024-10-16 15:02:07 746

原创 mysql误删数据恢复记录

1、数据库版本 5.7.36,由于误操作删掉了表的所有数据,但是数据库备份每天凌晨进行、只能从备份恢复昨日的全量数据,当日的数据将会丢失。

2024-08-14 16:34:49 537 1

原创 DelayQueueDemo

【代码】DelayQueueDemo。

2024-06-12 15:52:15 212

原创 easyexcel模板填充列表

/</</</

2024-06-05 15:45:30 885

原创 利用AOP数据脱敏

Retention;Target;if(result!= null) {//判断只有字段为字符串同时具有Desensitize注解才生效 if(value instanceof String) {} }if(result!= null) {

2024-04-17 17:18:41 346

原创 Dubbo泛化调用

泛化调用主要用于消费端没有 API 接口的情况;不需要引入接口 jar 包,而是直接通过 GenericService 接口来发起服务调用,。泛化调用对于服务端无需关注,按正常服务进行暴露即可。

2024-04-01 16:58:19 520

原创 SpringMvc 配置文件分离

日常开发中区分测试/生产两种环境的配置文件、springboot常用的解决办法是指定文件后缀在配置以此激活文件的配置内容、由于项目较老使用的是SpringMvc框架,所以通过maven的方式指定配置文件路径。

2024-02-27 10:36:54 621

原创 nginx前缀匹配

来结束地址部分,然后在后面添加 proxy_set_header Host $host;来确保请求头的 Host 字段被正确设置。当您希望保留原始请求的 URI 时,您应该在 proxy_pass 指令中使用。

2024-02-19 15:19:20 1107

原创 spring cloud stream

主要解决不同消息中间件切换问题。实现不同中间件的代码解耦。链接:后文使用kafka测试。

2024-02-06 17:05:55 1866

原创 dubbo rpc序列化

providerconsumer上述配置中,服务端和消费端serialization属性指定了序列化方式为Hessian2。同样,你可以根据需要选择其他的序列化方式。需要注意的是,序列化方式的选择应该与服务提供者和消费者之间的兼容性相匹配。如果服务提供者和消费者使用的序列化方式不一致,可能会导致通信失败。因此,在选择序列化方式时,应确保服务提供者和消费者都支持所选的序列化方式。

2024-01-31 11:37:06 673

原创 HttpClient调用405 Not Allowed

HTTP 405 错误,也被称为 “Method Not Allowed”,是一个常见的 HTTP 状态码。这个错误通常意味着客户端(例如,一个网页浏览器或一个应用程序)尝试使用服务器不支持的 HTTP 方法(例如 GET、POST、PUT、DELETE 等)来访问某个资源。例如,如果一个 API 只支持 GET 和 POST 方法,而客户端尝试使用 PUT 或 DELETE 方法来访问它,服务器可能会返回一个 405 错误。

2024-01-31 10:25:55 1042

原创 ajax下载文件

ajax下载文件。

2024-01-10 17:43:05 871

原创 netty使用

服务端配置类//设置线程组、parentGroup处理连接、childGroup处理I/O//Channel通过何种方式获取新的连接(NioServerSocketChannel、NioSocketChannel)//ServerChannel一些配置项、ChannelOption.SO_BACKLOG//ServerChannel的子Channel的选项//自定义ChannelInboundHandlerAdapter、编码解码器等。

2023-12-08 11:17:46 174

原创 Docker容器间网络共享

Docker环境中为了一套应用部署多个环境、并且不修改配置文件的情况下,做到一键部署。要求不同容器直接的网络交互,使用容器名称。网络相关常用命令官网的。

2023-12-01 10:44:56 754

原创 MQTT记录

mqtt:一种通信协议,是一种标准(类比)而emqx是这种标准的具体实现。主要为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,应用于物联网MQ:消息的传输过程中保存消息的容器 -消息队列。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功地传递它。

2023-09-11 17:29:04 292

原创 docker真实IP解决

在微服务的环境中使用docker部署各个应用,部分应用使用容器内的真实ip暴露出服务。会导致微服务之间调用出现网络超时,要解决这个问题需要让微服务暴露为宿主机的ip。

2023-09-11 16:15:47 747

原创 定时任务(等待结果)

2、主线程通过无限循环、获取定时状态。1、定义一个定时任务。

2023-09-04 16:29:07 200

原创 H5扫码整理

/ aspectRatio: 1.777778 // 可选,视频馈送需要的纵横比,(4:3--1.333334, 16:9--1.777778, 1:1--1.0)传递错误的纵横比会导致视频不显示。//console.log("创建扫码对象",html5QrCode)// this.$toast('您需要授予相机访问权限')// environment后置摄像头 user前置摄像头。// 可选,如果你想要有界框UI。"开始获取摄像头------"// 可选,每秒帧扫描二维码。'扫码errMsg: '

2023-08-24 14:55:40 545

原创 Spring自定义Event监听器

自定义事件处理逻辑、以及事件的参数等等if(!} }

2023-08-01 17:38:15 201

原创 static属性注入bean

会抛出异常。

2023-07-21 16:14:28 351

原创 Mybatis批量更新

利用mybatis标签foreach 特性,通过;号连接多条sql,达到一次连接批量处理多条sql目的,也可做批量新增。

2023-07-20 17:20:13 256

原创 MYSQL的MVCC个人总结

由于事务id数据库自动维护递增,事务id(1,2,3,4,6,7,8)均已提交,同一时间事务B开启,当前事务idB为12修改同一条数据并提交。事务A读取记录得到事务id = 12的数据,此时对比事务id判断是否可取当前值,idA < idB 当前事务不应该读到超前的版本12的数据,此时需要借助undo log版本链去找到小于当前事务id且不活跃的数据。在并发事务的时候,不同的事务会生成不同的read view ,再结合undo log配合事务隔离策略,解决并发事务的脏读、幻读、不可重复读的事务问题。

2023-04-19 15:46:54 124

原创 参数转换(统一校验)

/ 这里我是判断这个参数是否有我自定义的 MyAnnotation 注解 //return parameter.hasParameterAnnotation(MyAnnotation.class);// 也可以换成其他的,例如如果参数的类型是 Student 类的话,用这个resolver解析,怎么用就怎么写 return methodParameter . getParameterType() . equals(User . class);

2023-04-17 11:40:01 154

原创 【maven处理lib下的依赖-boot打war包】

通过maven将第三方jar包打进项目、boot打包成war包

2023-01-11 16:35:04 320

原创 Vagrant初次体验

hostname ,port,IdentityFile 这三个位置,登录信息约为 127.0.0.1:2222,用户名:vagrant,有可能不能选择密码登录,默认是用密钥登录,浏览,文件,找到 刚刚的IdentityFile ,再输入密码vagrant 就可以使用vagrant 用户 ssh登录。地址:https://app.vagrantup.com/boxes/search。地址:https://www.virtualbox.org/的相关配置,放开root用户权限并重启,放开。

2022-09-08 21:23:14 2939 1

原创 VUEX使用

针对多个组件依赖于同一状态,来自不同视图的行为需要变更同一状态。使用传参的方法对于多层嵌套的组件将会非常繁琐,并且对于兄弟组件间的状态传递无能为力。在根路径下创建store文件夹、和index.js文件。在项目中安装vuex、各自的版本对应命令如下。在main.js对store全局导入和引用。编写模板对store的值进行更改。...

2022-08-31 09:36:17 257

原创 跨域请求理解

浏览器访问前端,前端访问后端不同的服务http://localhost:8080 -> http://localhost:5000。协议、主机、端口都相同的话,则这两个 URL 是同源、反之则浏览器视为非同源(跨域:违背了同源策略)

2022-08-29 17:20:51 747

原创 Jasypt使用及工具类

Jasypt解析密文时,密文要求自己必须由工具类生成且正确的密文否则会抛出异常,

2022-08-26 11:22:15 697

原创 POI日期列解析

需求做EXCEL导入时引用POI对其进行解析、当解析EXCEL时间列(EXCEL文件中该列格式为时间)的抛出异常。POI解析日期类时会将日期(2022-08-25)解析成数字(44798),使用。的判断日期时必须判断单元格是否数值。判断是否日期,并解析成日期类。

2022-08-25 17:23:30 1700

原创 【Response重定向拦截器】

线上项目在对于现有的链接要求使用SSL的https请求,在使用HttpServletResponse对象进行重定向时、重定向后的URI变成http导致部分业务受影响。这里采用第三种方法实现对URI的修改。通过搜索引擎目前有三种解决方案。.........

2022-08-17 09:34:31 663

原创 FLINK - 整理

flink运行时组件作业管理器(JobManager)控制一个应用程序执行的主进程,也就是说,每个应用程序都会被一个不同的 JobManager所控制执行。 .JobManager会先接收到要执行的应用程序,这个应用程序会包括:作业图 (JobGraph)、逻辑数据流图(logical dataflow graph)和打包了所有的类、库和其它资源的JAR包。JobManager会把JobGraph转换成一个物理层面的数据流图,这个图被叫做“执行图”(ExecutionGraph),包.

2022-05-31 11:24:15 225

原创 JVM整理

JVM常用分析命令jvm进程查看命令命令参数解释jps-l查看所有jvm进程(类比linux的ps)jinfo-flag PrintGCDetails pid查看某jvm进程()的运行参数导管jvm查看默认各项参数参数解释-XX:+PrintFlagsInitial查看初始默认-XX:+PrintFlagsFinal查看修改更新-XX:+PrintCommandLineFlags查看命令行例如:java -XX:+

2022-05-31 11:04:10 95

原创 Mysql锁基础

【表锁】偏向MyISAM存储引擎,开销小,加锁快:无死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。MySQL的表级锁有两种模式:表共享读锁(Table Read Lock)表独占写锁(Table Write Lock>锁类型可否兼容读锁写锁读锁是是否写锁是否否结论:结合上表,所以对MylSAM表进行操作,会有以下情况:对MylISAM表的读操作〈加读锁),不会阻塞其他进程对同一表的读请求,但会阻塞对同一表的写请求。只有当读锁释放后,才会

2022-04-24 15:38:05 874

空空如也

空空如也

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

TA关注的人

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