
技术分享
文章平均质量分 73
技术分享
wu@55555
软考高级系统架构师、Elastic认证工程师、CSDN后端领域博客专家、阿里云专家博主、华为云·云享专家博主、51CTO专家博主、掘金社区认证优秀作者
——致力于家乡互联网技术建设
展开
-
做接口开发运维,居然不知道如何用curl指令测试接口网络传输耗时?
curl(Client URl)是一个用于传输数据的命令行工具,支持http、https、ftp、ftps、scp、sftp、telnet等多种协议,常用于API接口测试、网络连通性测试、文件上传下载等。其基本语法格式为curl [参数] [url]设置请求方式 -X# GET请求# POST请求# PUT请求设置参数 -d设置请求头 -H# POST请求设置Header下载文件 -o# 比如上传文件 -F,–data-binary# 表单文件上传# 二进制上传。原创 2025-03-05 08:00:00 · 1559 阅读 · 0 评论 -
java进阶:还在用明文传输前后端参数?等保3级认证不过啦?|前后端参数加解密
前段时间公司老系统做等保三级认证,在前后端参数传输中被检测有重大漏洞,原因是原系统中使用的参数加密是对称加密,而密钥被明晃晃的存储在前端js代码中,相当于明文传输,后续结合非对称加密做了优化,今天特意整理下思路和实现方法,供大家参考原创 2024-12-10 20:30:00 · 1247 阅读 · 0 评论 -
后端常用技能:基于easy-poi实现excel一对多、多对多导入导出【附带源码】
easy-poi是一个基于Apache POI的Java端Excel 操作工具库,目的是为了简化java程序对excel文件的操作。该库提供了简单的API接口,支持excel的读写、格式化等,以及excel数据导出到pdf、word等文件。easypoi-base 是 easypoi的核心模块,提供了基本的 Excel 处理功能,如读取、写入、转换等。它不依赖于 Spring Boot,可以在任何 Java 项目中使用。原创 2024-05-08 18:01:50 · 6299 阅读 · 17 评论 -
后端常用技能:解决java项目前后端传输数据中文出现乱码、问号问题
思路1:后端响应体及前端blob对象声明编码格式为utf8思路2:application.properties中设置全局编码格式思路3:重新编码传输数据思路4:jvm启动脚本中添加-Dfile.encoding=utf-8原创 2024-05-08 18:01:34 · 5222 阅读 · 0 评论 -
redis: 记录一次线上redis内存占用过大问题解决过程
记录一次线上redis占用过大的排查过程,供后续参考。原创 2023-11-07 20:23:39 · 3222 阅读 · 0 评论 -
spring:实现初始化动态bean|获取对象型数组配置文件
近期因为要完成实现中间件的工具包组件,其中涉及要读取对象型的数组配置文件,并且还要将其加载为bean,因为使用了版本,很多springboot的相关特性无法支持,因此特此记录,以方便后续同学有相同情况可以参考。原创 2023-09-19 09:02:24 · 3443 阅读 · 0 评论 -
linux系统中删除环境变量没有生效|linux如何删除环境变量
今天在书写shell脚本读取环境变量时,发现取消环境变量后一直不生效,记录一下解决方法,以供后续参考原创 2023-05-05 22:17:29 · 1092 阅读 · 0 评论 -
typora每次复制文档都要附带图片文件夹?学会配置gitee图床
我们通过chatGPT得到答案,可以看到就是一个图片存储服务器。但我们自己又没有服务器,那怎么构建呢。我们可以利用gitee提供的图床服务来实现。原创 2023-02-10 00:14:05 · 2033 阅读 · 0 评论 -
GIT:如何删除仓库中的.idea .DS_Store target文件/文件夹并设置下次不上传
我们常常会有在git仓库初始化时,忘记设置.gitignore文件导致一些非工程文件上传到仓库中了,导致整个仓库的不美观,甚至影响其他开发同事配置代码。这时候我们就需要删除这些指定文件,那么如何操作呢,这一章我们就来讲解这个问题。原创 2022-12-23 19:10:52 · 2469 阅读 · 0 评论 -
应用层协议不难理解,其实它们就出现在你熟悉的地方
大家常常听说TCP/IP四层网络结构,最外层就是应用层,而应用层有哪些数据传输协议呢?想必大家一下子不一定能想的起来,是不是觉得很难记?那么今天我们就结合我们熟悉的应用服务来理解这些协议的使用场景原创 2022-09-07 09:14:18 · 759 阅读 · 0 评论 -
springboot项目如何打包成.sh脚本形式运行|assemly插件打包自定义脚本参数
springboot作为目前主流的java开发框架,因为便捷和易上手的特性,深受开发者欢迎。springboot默认以jar包形式,通过java -jar指令运行但这样的启动方式实际上不是很友好,我们常常看到各类组建通过bin目录下的start.sh脚本进行启动,我们可以在.sh脚本中书写自定义各类启动参数。这样的方式更加友好,那么我们的springboot项目可不可以打包成这样的形式启动呢?当然可以,今天我们就来看如何实现。原创 2022-09-03 02:37:25 · 2843 阅读 · 2 评论 -
IDEA常用快捷键,提升开发效率
以上就是本期给大家分享的IDEA操作快捷键了,希望可以帮助到大家提高开发效率!原创 2022-08-17 23:20:29 · 4013 阅读 · 2 评论 -
连夜整理了多年后端开发最常用linux指令(建议收藏,边用边学)
前段时间有同学问我:linux指令那么多,怎么去学?实际上这个问题也曾经困扰着我,多年走来,我总结了一个经验:优先学习你马上要用到的,而不是上来就体系的全部学习一遍。可能很多同学会不太适应这样的方式,不体系的学习那很多知识不就跃层了吗?根本不理解什么意思?为什么这样,是什么原理?但是大家要把握一点,这个行业的技术日新月异,作为后端开发甚至是运维而言,永远有比linux指令更要紧的技能要求你掌握。而linux指令本身,就像你操作window电脑,你一开始玩电脑的时候是先把电脑说明书看一遍吗?还不是打开原创 2022-08-14 00:48:34 · 1777 阅读 · 0 评论 -
作为开发,你不得不知道的三个性能测试工具|Jmeter、Apipost、JMH使用指南
实际开发过程中,我们常常需要对接口进行调用来测试接口可用性,同时也需要对接口进行压力测试,来反馈项目的并发量。而这些操作都需要借助第三方工具来实现,今天我们就来聊聊这些测试工具。.........原创 2022-07-22 11:38:39 · 6382 阅读 · 0 评论 -
springcloud:解决阿里云OSS文件访问跨域问题
最近在高德地图中引用阿里云OSS存储的图片时,出现跨域访问问题,特此记录,以方便后续同学参考1、在阿里云OSS后台管理中,进入权限管理,进入跨域设置,添加跨域规则,设置来源为图片来源于https://blog.csdn.net/strugglerookie/article/details/1194172812、至此配置完成后访问图片还是会出现跨域问题,这是因为OSS文件默认会开启缓存,及后续访问的实际上是缓存的文件,这就会导致不能匹配到我们上述配置的跨域规则于是我们需要将缓存禁用掉,如果文件就一两个的话原创 2022-05-31 23:10:59 · 7788 阅读 · 0 评论 -
一张图区分0、null、undefined、Non-zero
引言工作中我们经常会看到一些为空提示,有时为0,有时为null,有时为nudefined,但这些空值到底有什么区别呢?今天我们就通过图解的形式来向大家形象的解释这几个空值之间的区别图解(注:图片来源于百度图库)Non-zero valueNon-zero value表示非零值,与0值对立,该对象存在,且值非零,资源尚未消耗殆尽00表示值为零,是具有具体意义的,与其他数值对象同等,只是其值为0,而不是为空nullnull用于表示无效的、零值的,其在计算机中并不是说完全没有值,实际上nul原创 2022-05-29 11:20:40 · 1509 阅读 · 0 评论 -
PostgreSQL:开启慢日志|查询日志位置|查询data文件夹位置|查询config文件位置
0. 引言最近在开启postgresql慢日志时,定位相关文件位置花费了一些功夫,特此记录,供后续有需要的同学参考1. 查询配置文件位置登陆postgresqlpsql postgres执行如下指令show config_file;2. 查询data文件夹位置登陆postgresql执行指令:show data_directory;3. 查询日志位置登陆postgresql,执行指令show log_directory;得到的是一个文件夹,该文件夹就在data目录下原创 2022-05-15 00:23:20 · 6693 阅读 · 0 评论 -
java: 通过ffmpeg获取视频时长
0 引言今天正好计划学习新的课程,因为是下载到本地的视频,为了方便做学习计划,要统计视频时长。不想一个一个的数,就利用ffmpeg做了一个视频时长统计以及自动分配每日学习任务的demo以此记录方便后续参考1 环境搭建1.1 安装ffmpeg1.1 下载ffmpeg官方下载地址1.2 双击可执行文件ffmpeg1.3 查看版本cd /Library/software/ffmpeg5.0./ffmpeg -version2 开发1、创建springboot项目,修改配置文件#原创 2022-02-08 22:14:52 · 4789 阅读 · 1 评论 -
springboot 如何通过private final的形式引入bean
问题首先有构造方法的Bean是可以通过private final来引入的,如下图中的Controller中对service的引用但是在service引用别的bean时却不能用private final的形式,这是为什么?使用private引用也会导致bean为空原因注意文章的第一句话有构造方法的Bean是可以通过private final来引入的,而上述的Controller中是加了@AllArgsConstructor注解的,它会给这个类加上全参的构造函数,这样就会在该类初始化时同步给属性原创 2021-11-24 15:05:16 · 6354 阅读 · 1 评论 -
springboot加载配置文件顺序
按照以下优先级:1、项目当前目录的“/config”子目录。2、项目当前目录。3、classpath 中的“/config”包。4、classpath原创 2021-09-29 09:39:50 · 168 阅读 · 0 评论 -
CopyOnWriteArrayList的迭代器支持fast-fail吗 Concurrent包的迭代器支持fast-fail吗
如果你了解这个集合,且清楚写时复制原理,可以直接跳到最后查看答案什么是CopyOnWriteArrayList容器分为两大类:Collection和Map就Map而言,其HashMap在多线程高并发场景下有ConcurrentHashMap来保障线程安全那么JUC包下有支持list线程安全的容器吗?首先呢Vector是线程安全的,但它的做法是直接在方法上加synchronized,这导致效率不高。我们有很多场景是读多写少,写的时候可以加锁保证数据一致性,但是读的时候是没有必要加锁的。因此Cop原创 2021-07-01 01:39:20 · 355 阅读 · 0 评论 -
HashMap为什么用红黑树而不用跳表?redis的zset为什么用跳表而不用红黑树?
问题引入前些天在思考zset为什么用跳表而不用红黑树时,自然想到了HashMap为什么用红黑树而不用跳表,做了一些查询和考虑,以此记录结果redis的zset为什么用跳表而不用红黑树?1、跳表的实现更加简单,不用旋转节点,相对效率更高2、跳表在范围查询的时候的效率是高于红黑树的,因为跳表是从山层往下层查找的,上层的区域范围更广,可以快速定位到查询的范围3、平衡树的插入和删除操作可能引发子树的调整、逻辑复杂,而跳表只需要维护相邻节点即可4、查找单个key,跳表和平衡树时间复杂度都是O(logN)原创 2021-06-28 16:19:20 · 4871 阅读 · 6 评论 -
springboot2.x+跨域访问+拦截器 配置swagger
创建swagger配置类因为我的项目是多module,为了能让多module项目中方便引用swagger,所以单独创建了一个swagger-api项目,到时需要引用swagger的项目只需要添加swagger-api的依赖就可以了。swagger-api这里创建的是maven项目,在其pom中添加如下依赖<dependencies> <!--swagger--> <dependency> <groupI原创 2020-12-27 23:25:23 · 595 阅读 · 0 评论 -
postgresql.util.PSQLException: 不良的类型值 int : 2020-11-19 02:47:05.013
背景mybatis-plus+postgresql获取数据库数据时报错postgresql.util.PSQLException: 不良的类型值 int : 2020-11-19 02:47:05.013解决从报错信息可以看出是时间类型数据映射出现了问题解决办法是将实体类申明序列化implements Serializable@Data@NoArgsConstructor@AllArgsConstructor@TableName("menu_management")public cla原创 2020-11-19 12:58:53 · 10639 阅读 · 2 评论 -
Nginx+tomcat实现负载均衡 部署多个tomcat
下载并安装nginx和tomcatnginx下载地址,选择版本1.12.2http://nginx.org/en/download.htmltomcat下载,选择版本9.0.29http://tomcat.apache.org/注意:以上都是下载的解压版在本机或虚拟机上安装多个tomcat安装tomcat这里示例在本机上安装三个tomcat解压并修改tomcat文件夹名即可。图中圈中部分,忽略其他的tomcat配置tomcat添加环境变量CATALINA_HOME,我这里因为还有其他原创 2020-11-14 10:27:12 · 701 阅读 · 0 评论 -
IDEA打包多module springboot项目(流程纪实)
项目简介项目下有多个module其中client和common-lib是用于存放公共类gateway和backend都引用到client和common-libweb是前端项目docs是项目文档路径将各module打包jar包因为我的项目实际只有gateway、backend、web需要打包运行, common-lib和client都是没有启动类的,无需运行。于是开始打包backend但是可以看到报错了Could not resolve dependencies for project原创 2020-11-12 17:21:59 · 1078 阅读 · 0 评论 -
Springboot实现自定义注解权限校验
Springboot实现自定义注解权限校验自定义注解类定义拦截器注册拦截器注解使用示例controller层js层自定义注解类/** * @author whx * 权限 */@Documented@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface FunctionPermission { int functionId() default 0;}@Documente原创 2020-11-04 14:37:58 · 567 阅读 · 0 评论 -
Tomcat https证书部署
Tomcat开通https :0.开通前准备:(1)证书文件(2)绑定证书对应域名及外网IP(一个外网IP可以绑定多个域名,一个域名只能绑定一个外网IP)(3)开通http 内网端口到外网端口的映射,比如:内网IP:8080映射外网IP:80(4)开通https 内网端口到外网端口的映射,比如:内网IP:8443映射外网IP:443注:8080端口就是需要在tomcat配置的http端口,8443就是需要在tomcat配置证书的https端口1 本地生成(jdk生成)1.1 cm原创 2020-08-06 14:16:30 · 510 阅读 · 0 评论 -
java向远程MSMQ通道发送消息,接收队列消息
#解决java向远程MSMQ通道发送消息,接收队列消息一、问题:解决java向远程MSMQ通道发送消息,接收队列消息二、资源:需要如图所示四个文件资源下载地址:见我博客中分享的JAVA远程发送MSMQ资源三、步骤:1.将MsmqJava.jar文件引用到项目中,将其余三个文件放到jre/bin目录下2.具体发送方法如下:public void send() {String l...原创 2019-09-03 22:49:59 · 1384 阅读 · 11 评论