![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
随笔
文章平均质量分 52
一名技术极客
在代码的海洋里,我是一名不断航行的探索者。热爱Java,热衷于深入挖掘技术细节,享受解决复杂问题的成就感。这里是我的CSDN博客,记录我在编程路上的学习笔记、项目实践和对新技术的思考。
作为一名拥有多年开发经验的Java程序员,我深知学习过程中的困难与挑战。因此,我的博客会尽量用简明的语言去阐释复杂的概念,分享实用的编程技巧,以及那些在我工作过程中积累的宝贵经验。无论是初学者还是资深开发者,我都希望这里的内容能对您有所帮助。
在这个快速变化的技术世界,让我们一起保持好奇心,不断学习,共同进步。欢迎留言讨论,期待与您一起探讨编程之美!
展开
-
Mybatis 查询TypeHandler使用,转译查询数据(逗号分隔转List)
通过配置MybatisTypeHandler实现返回查询参数转译原创 2024-05-30 08:55:52 · 731 阅读 · 0 评论 -
java中的Stack解析
Stack就是栈,是一个重要的数据结构,它具有 先进后出的特点。栈的入栈和出栈操作都在栈顶进行,也可以说是在栈的尾部进行。所以先存的要在后面才能取出来,所以栈具有先进后出的特点。原创 2024-05-06 09:02:39 · 350 阅读 · 0 评论 -
restemplate请求乱码之content-encoding=“gzip“
使用请求文本数据接口,发现解码后的字符串是乱码。此时除了编码格式问题外就可以怀疑是不是服务器响应了压缩后的数据。解决这个问题,先尝试移除请求头,告诉服务器,客户端不需要压缩响应体。如果服务器还是响应压缩后的数据,尝试读取服务器的头,根据服务器的压缩编码,自己再进行解压缩。原创 2024-03-28 11:42:09 · 841 阅读 · 0 评论 -
HTTP探秘:揭开互联网传输的神秘面纱,让你的网络之旅更顺畅!
HTTP 协议 是(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的 WWW 文件都必须遵守这个标准HTTP是一个基于 TCP/IP 通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)原创 2024-03-28 01:57:11 · 1556 阅读 · 0 评论 -
关于LLM的简单赘述
系列为代表的大模型,只提供在线调用方法,无本地硬件要求,但调用需要“按量计费”(以及有网络限制)。为代表的大模型,开源全部代码,可以直接 本地安装部署。,有一定硬件要求和开发技术门槛。以 LAMMA1、2模型。以 OpenAIGPT。原创 2024-03-28 00:26:52 · 377 阅读 · 0 评论 -
window下安装并使用nvm(含卸载node、卸载nvm、全局安装npm)
因为nvm可以管理多个版本的node,如果每次添加一个node版本都要安装一堆的包很麻烦,如果有一个npm可以让各个版本的node共用,就不会这么麻烦了。//安装全局npm,不同的node都使用这个npm。想更新全局的npm的话首先删除全局路径(就是上一行命令的地址,可以使用npm config ls查看)下的npm,再执行一次这个命令即可。如果你已经安装了node,那么你需要先卸载node,如果你没有安装那直接跳过这一步到下一步。之前,避免npm访问到的是nodejs中自带的npm包管理工具。原创 2024-03-20 17:31:05 · 1834 阅读 · 5 评论 -
算法时空复杂度分析:大O表示法
算法题写完以后,面试官经常会追问一下你这个算法的时空复杂度是多少?(好像作为一名算法工程师,我日常码代码的过程中,并没有太注意这个,惭愧~但是找做后端开发的男票求证了一下,他们日常工作确实会去考虑这种问题)那么无论是为了应付面试,还是为了未来码代码可以精益求精,都还是认真的学一下时空复杂度分析方法吧!由于不是科班出身,这东西理解了好长时间对于为什么需要时空复杂度分析,而不是直接跑一下代码看看测试结果依赖测试环境:机器的配置会十分影响你跑出的结果;2.测试结果依赖数据规模的大小。原创 2024-03-15 09:46:39 · 673 阅读 · 0 评论 -
Spring Boot java -jar --spring.profiles.active=dev 失效问题
【代码】Spring Boot java -jar --spring.profiles.active=dev 失效问题。原创 2024-02-18 20:16:07 · 1150 阅读 · 0 评论 -
VUE 字段为空时,一个class搞定,适用多种情形
在下不才,写了个适用于大多数el-table、el-description、el-collapse等、但不限于这些内容的空字段通用样式,只要是用css的都适用。只需要在父节点添加该类名,即可把所有空字段都替换为‘-’(根据需要可自定义,也可以为‘/’、‘–’等,只需要改变以下样式里的content:’-’;如果有多个字段需要判断,你是否要写多个空字段的判断?回答我,是或者不是!原创 2024-02-15 22:58:21 · 682 阅读 · 0 评论 -
java 解析路径中的参数(&与=拼接的参数)
【代码】java 解析路径中的参数(&与=拼接的参数)原创 2024-02-01 17:46:26 · 257 阅读 · 0 评论 -
java 工具类实现Base64二维码图片识别
【代码】java 工具类实现Base64二维码图片识别。原创 2024-02-01 17:18:13 · 210 阅读 · 0 评论 -
IDEA 28 个天花板技巧,yyds!
注意:不同idea版本菜单、目录可能有细微差别,自己稍加分析都能找到。原创 2024-01-30 19:08:14 · 1110 阅读 · 0 评论 -
Java基础 LinkedHashMap
LinkedHashMap是HashMap和双向链表的合二为一,即一个将所有Entry节点链入一个双向链表的HashMap(LinkedHashMap = HashMap + 双向链表)LinkedHashMap和HashMap是Java Collection Framework 的重要成员,也是Map族(如下图所示)LinkedHashMap是HashMap的子类(拥有HashMap的所有特性)原创 2024-01-30 17:49:41 · 723 阅读 · 0 评论 -
springboot使用jasypt对配置文件加密,加密数据库连接
Jasypt是一个Java库,用于加密和解密文本。它支持多种加密算法,如PBEWithMD5AndDES、PBEWithMD5AndTripleDES、PBEWithSHA1AndDESede等原创 2024-01-23 12:19:50 · 508 阅读 · 0 评论 -
一碰就头疼的 Kafka 消息重复问题,立马解决!
数据重复这个问题其实也是挺正常,全链路都有可能会导致数据重复。通常,消息消费时候都会设置一定重试次数来避免网络波动造成的影响,同时带来副作用是可能出现消息重复。原创 2024-01-16 15:18:03 · 1561 阅读 · 0 评论 -
Java 主线程等待所有异步线程执行结束后在继续执行
【代码】Java 主线程等待所有异步线程执行结束后在继续执行。原创 2024-01-16 11:59:51 · 654 阅读 · 0 评论 -
7个理由:从Java8升级到Java17
从Java 8 到 Java 20,Java 已经走过了漫长的道路,自 Java 8 以来,Java 生态系统发生了很多变化。最显着的变化是 Java 的发布节奏。Java 8 于 2014 年发布,Java 17 于 2021 年发布。这两个版本之间相隔了 7 年。Java17是一个长期支持(LTS)的版本,会有更稳定和持久的维护和更新。如果你和我一样,已经使用Java 8很长时间了,觉得需要了解一下Java的新特性,那么这篇文章就是为你准备的。原创 2024-01-16 11:35:49 · 966 阅读 · 0 评论 -
java接口获取数据为空就等待,超过5s后自动结束等待
【代码】java接口获取数据为空就等待,超过5s后自动结束等待。原创 2024-01-15 11:41:18 · 498 阅读 · 0 评论 -
springboot 自定义校验注解,可校验日期字符串是否符合要求
【代码】springboot 自定义校验注解,可校验日期字符串是否符合要求。原创 2024-01-11 14:42:54 · 901 阅读 · 0 评论 -
springboot虹软人脸识别集成
关于springboot虹软开源免费人脸对比能力集成原创 2024-01-09 20:20:44 · 1005 阅读 · 0 评论 -
分享一个关于java计算经纬度距离的工具类
【代码】分享一个关于java计算经纬度距离的工具类。原创 2024-01-09 01:24:14 · 374 阅读 · 0 评论 -
分享一个java处理坐标转换问题的工具类【天地图、 高德地图、百度地图】
【代码】分享一个java处理坐标转换问题的工具类【天地图、 高德地图、百度地图】原创 2024-01-09 01:16:18 · 862 阅读 · 0 评论 -
分享一个java base64 图像处理工具类【图像旋转】
【代码】分享一个java base64 图像处理工具类【图像旋转】原创 2024-01-09 01:13:27 · 447 阅读 · 0 评论 -
springboot 自定义校验注解,可校验传入值是否满足条件
【代码】springboot 自定义校验注解。原创 2023-08-02 09:19:03 · 423 阅读 · 0 评论 -
Linux单机安装Minio文件服务
下载: wget https://dl.min.io/server/minio/release/linux-amd64/minio 官网在国外下载有点慢,CSDN下载:linux系统minio安装包-CentOS文档类资源-CSDN下载 建议先创建个目录:mkdir /usr/local/minio进入到已经/usr/local/minio目录下;赋执行权:chmod +x minio创建文件存放目录:mkdir data设置密码。原创 2023-01-31 13:43:43 · 2281 阅读 · 1 评论 -
Linux Nginx设置开机自动启动以及服务文件配置
Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3。[Service]的启动、重启、停止命令全部要求使用绝对路径。PrivateTmp=True表示给服务分配独立的临时空间。Type=forking是后台运行的形式。ExecStart为服务的具体运行命令。[Service]服务运行参数的设置。Description:描述服务。ExecReload为重启命令。ExecStop为停止命令。After:描述服务类别。如果此时查看状态报错。原创 2023-01-31 13:32:26 · 587 阅读 · 0 评论 -
Vue根据网络文件路径下载文件【自定义属性 v-down】
提到下载文件大家首先肯定会想到 模拟点击 、a标签等因为发现公司同事还在使用向后端拿二进制流来下载,这就对后端的流操作以及前端的工作增加了不少工作量,偶然想到使用VUE自定义属性来快速实现下载文件、图片等原创 2023-01-17 23:59:04 · 3868 阅读 · 1 评论 -
VUE实现加载HLS数据流
因为需要对接监控,在网上找了很多文章参考,都会报错,本文附上一篇实测有效的组件。原创 2022-12-09 17:03:50 · 1807 阅读 · 0 评论 -
linux命令之修改yum源为国内镜像
centos7 修改yum源为阿里源首先是到yum源设置文件夹里1. 查看yum源信息: yum repolist2. 安装base reop源 cd /etc/yum.repos.d3. 接着备份旧的配置文件 sudo mv CentOS-Base.repo CentOS-Base.repo.bak4. 下载阿里源的文件 sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/Cen原创 2022-03-23 19:15:20 · 1591 阅读 · 0 评论 -
Java手机号码工具类(判断运营商、获取归属地)
所需引用Jar包<dependency> <groupId>com.googlecode.libphonenumber</groupId> <artifactId>geocoder</artifactId> <version>2.15</version></dependency> <dependency> <groupId>com.googlecode.libphonen原创 2022-02-28 08:43:05 · 7933 阅读 · 1 评论 -
java 线程池的使用 ThreadPoolExecutor
java 线程池的使用 ThreadPoolExecutor所需maven包构建线程池具体代码使用废话不爱说,直接上代码,懂的都懂所需maven包 <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>30.0-jre</version> </depend原创 2022-02-25 16:08:24 · 497 阅读 · 0 评论 -
java反射中Parameter的getName后得到arg0的问题
一次实际研发中偶然碰到的问题 private List getParamsName(HandlerMethod handlerMethod) { Parameter[] parameters = handlerMethod.getMethod().getParameters(); List<String> list = new ArrayList<>(); for (Parameter parameter : parameters)原创 2022-02-22 17:01:29 · 1836 阅读 · 0 评论 -
SpringBoot 项目打成可安装程序包
SpringBoot 项目打成 .exe 程序,实战来了前言准备准备工作开始前言近期做了一个前后端合并的spring boot项目,但是要求达成exe文件,提供给不懂电脑的小白安装使用,就去研究了半天,踩了很多坑,写这篇文章,是想看到这篇文章的人,按照我的步骤走,能少踩坑。准备准备工作一个jar包,没有bug能正常启动的jar包exe4j,一个将jar转换成exe的工具链接:https://share.weiyun.com/IQ7JsChn 密码:72edy7注册码:L-g782dn2原创 2022-02-21 14:12:49 · 1747 阅读 · 4 评论 -
钉钉免费实现内网穿透绝对靠谱
场景:有时候开发者想把私有电脑作为服务器,需要把开发机电脑上的项目暴露到公网,方便远程访问和调试,这时候就需要使用内网穿透,这里介绍一下阿里巴巴旗下钉钉内网穿透工具的使用一、下载钉钉穿透工具,官网地址(https://github.com/open-dingtalk/pierced),或者直接克隆到本地,git命令:git clone https://github.com/open-dingtalk/pierced.git二、启动运行,打开项目切换至 windows_64 目录下,执行如下命令(原创 2022-01-28 13:46:07 · 3344 阅读 · 1 评论 -
Linux 环境变量配置汇总
Linux 环境变量配置汇总01、Linux环境变量配置02、Linux读取环境变量03、Linux环境变量配置方法一:export PATH04、Linux环境变量配置方法二:vim ~/.bashrc05、Linux环境变量配置方法三:vim ~/.bash_profile06、Linux环境变量配置方法四:vim /etc/bashrc07、Linux环境变量配置方法五:vim /etc/profile08、Linux环境变量配置方法六:vim /etc/environment09、Linux环境变量原创 2022-01-28 08:55:41 · 480 阅读 · 0 评论 -
java 字符串得压缩与解压
在实际研发中会存在传输各种长度很大得字符串的情况,直接传输极其浪费资源,故编写此工具类,不喜勿喷,希望大家带来帮助package com.djy.spring.demo;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.util.zip.*;public class ZipUtils { /** *原创 2022-01-25 11:30:57 · 521 阅读 · 0 评论 -
还在用策略模式解决 if-else?Map+函数式接口方法才是YYDS
参考用Map+函数式接口来实现策略模式我想小伙伴们经常有这样的不满,我的业务逻辑就3 4 行,你给我整一大堆类定义?有必要这么麻烦吗?我看具体的业务逻辑还需要去不同的类中,简单点行不行。其实我们所不满的就是策略模式带来的缺点:1、策略类会增多 2、业务逻辑分散到各个实现类中,而且没有一个地方可以俯视整个业务逻辑针对传统策略模式的缺点,在这分享一个实现思路,这个思路已经帮我们团队解决了多个复杂if else的业务场景,理解上比较容易,代码上需要用到Java8的特性——利用Map与函数式接口来原创 2022-01-17 09:13:24 · 347 阅读 · 0 评论 -
Html多个input[range]同时使用且共用同一个总数量
需求:Html多个input[range]同时使用且共用同一个总数量,并且多个滑动块加一起的数量不得超过总数,等于总数时禁止向右滑动,可以向左滑动原创 2022-01-13 16:55:47 · 448 阅读 · 1 评论 -
项目中 Entity、VO、DTO的认识和应用
这个对象的区别曾经真是困扰了我好久,在这里分享下,希望能够给大家带来帮助项目中关于Entity、VO、DTO的认识和应用、entity 里的每一个字段,与数据库相对应,vo 里的每一个字段,是和你前台 html 页面相对应,dto 这是用来转换从 entity 到 vo,或者从 vo 到 entity 的中间的东西 。(DTO中拥有的字段应该是entity中或者是vo中的一个子...原创 2020-04-13 21:54:51 · 1461 阅读 · 2 评论 -
Java虚拟机这一块——编写高效优雅 Java 程序
编写高效优雅 Java 程序面向对象构造器参数太多怎么办?Builder 模式不需要实例化的类应该构造器私有不要创建不必要的对象避免使用终结方法使类和成员的可访问性最小化使可变性最小化复合优先于继承接口优于抽象类可变参数要谨慎使用返回零长度的数组或集合,不要返回 null优先使用标准的异常用枚举代替 int 常量将局部变量的作用域最小化精确计算,避免使用 float 和 double当心字符串连接的性能控制方法的大小面向对象构造器参数太多怎么办?如果参数很多,会导致构造方法非常多,拓展性差,代码难编原创 2020-11-23 08:50:34 · 230 阅读 · 2 评论