自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis延时队列在订单超时未报到场景的应用分享

Redis 延时队列是一种特殊的队列,它允许元素在指定的时间后才被消费。在 Redis 中,通常可以使用有序集合(Sorted Set)或 Redisson 提供的延迟队列来实现。有序集合的分数可以用来表示元素的过期时间,通过不断轮询有序集合,当分数小于当前时间时,就将元素取出消费。而 Redisson 则提供了更方便的 API 来实现延时队列,它内部封装了很多复杂的操作,让开发者可以更简单地使用。

2025-03-29 10:46:30 876

原创 关于KafkaTemplate与 @KafkaListener生产者与消费者功能的实现

Kafka 是一个流行的分布式流处理平台,广泛用于构建实时数据管道和流应用程序。在 Java 应用程序中,Spring Framework 提供了对 Kafka 的集成支持,通过 spring-kafka 模块实现。KafkaTemplate 和 @KafkaListener 是 Spring Kafka 中的两个重要组件,它们分别用于发送消息和接收消息。

2024-07-15 23:49:36 1836

原创 关于java对接微信公众号(对接百度AI实现图片文字识别,对接聚合数据实现笑话、谜语大全,成语接龙等功能)

关于java对接微信公众号(对接百度AI实现图片文字识别,对接聚合数据实现笑话、谜语大全,成语接龙等功能):​只是自己学习使用,所以有点不规范,请见谅。本文直接附上源码与效果图,具体操作步骤请参考另一篇文章:http://t.csdnimg.cn/PQu25​

2024-04-26 17:51:37 835 2

原创 海康威视(iSecure Center综合安防管理平台)第三方通过标准协议对接视频流分享

第三方对接 iSC 平台视频功能的时候,大多数情况下都是通过集成我们的视频 SDK(包括视频 web 插件、客户端插件、视频 SDK-win32/win64、视频 SDK-Android/iOS 等)来实现视频功能的对接,但还是有很大一部分第三方有通过标准协议(RTSP/RTMP/HLS)来对接视频流需求,接下来主要介绍下这三种协议的对接方式:

2024-04-25 14:38:07 12922

原创 关于JAVA如何对接海康威视(iSecure Center综合安防管理平台)门禁和摄像头视频取流

根据自己的需求灵活选用对接方式。我们客户购买了海康的综合安防管理平台,经与海康交流过后,我这里选择直接通过调用海康的综合安防管理平台的Open Api进行对接这篇文章只包含java如何对接海康威视,不涉及前端具体技术需求:对接海康威视的视频与门禁。(1)大屏可视化,实现视频的取流,摄像头监控实时预览。(2)获取摄像头监控点与门禁设备的状态,是否运行正常(3)获取门禁设备的事件,用户进出情况记录。大致对接流程:注册登录后,在场景方案中选择基础对接,先了解接口安全认证规则,确保必要参数客户/海康已经提供,

2024-04-25 13:30:35 10152 1

原创 深入理解Lambda表达式-函数式编程-Stream流(最全学习笔记)

Lambad表达式:Lambda是JDK8中一个语法糖。他可以对某些罩名内部类的写法进行简化。它是函数式编程思想的一个重要体现。让我们不用关注是什么对象。而是更关注我们对数据进行了什么操作。

2024-03-01 14:44:09 1307 2

原创 Redis延时队列在订单超时未报到场景的应用补充说明

本方案已在三甲医院预约系统中验证,支撑日均10万+订单量,平均延迟处理时间≤500ms。实际部署时建议配合APM工具(SkyWalking)进行全链路监控。定时任务每10分钟向所有队列发送心跳消息("keepAlive"),避免云Redis因空闲断开连接。RocketMQ:固定延迟级别(如1s/5s/10s/30s/1m等)分片标识,可将不同业务类型订单分散到多个队列。设计,支持任意业务对象入队,如订单ID、DTO等。Redis延时队列:秒级精度(最高)定时任务:依赖扫描间隔(通常分钟级)

2025-03-29 10:54:57 478

原创 关于使用Mybatis-plus的TableNameHandler动态表名处理器实现分表业务的详细介绍

总结而言,如果项目的需求相对简单,主要集中在单个数据库实例内,并且团队对 MyBatis-Plus 已经有一定的熟悉度,那么利用 TableNameHandler 实现分表是一个高效的选择。然而,对于那些需要跨数据库实例、具备复杂查询要求或需要更多高级数据库管理特性的应用场景,选择像 Apache ShardingSphere 或 MyCat 这样的专业工具可能是更好的解决方案。

2025-01-27 15:24:12 958 2

原创 关于使用Mybatis-Plus的MetaObjectHandler(元对象处理)来实现自动填充实体对象字段

当你实现了并希望它能生效时,确保该类已经被 Spring 容器管理(即加上@Component注解)。如果你的项目中有多个实现,它们会按照 Spring Bean 的加载顺序依次执行。在使用和方法时,确保传递的类型与实体类中字段的类型相匹配,否则可能会抛出异常。通过这种方式,MyBatis-Plus 能够极大地简化开发过程中的数据操作,减少手动设置字段值的工作量,提高开发效率。

2024-11-19 11:00:00 581

原创 关于Java处理Excel常规列表记录,并入库的操作

对于常规的Excel列表(二维表格)的入库处理,一般的mysql连接工具,例如Navicat就支持。但是,因为业务需要,不想每次都去手动导入,所以这里采用编码且定时任务的形式来实现。

2024-11-18 16:34:24 1048

原创 关于Java合并多个Excel中的数据【该数据不是常规列表】,并入库保存的方案

使用hutool工具包的ExcelReader,进行数据处理,合并多个Excel

2024-11-18 15:40:29 1246

原创 关于Spring 注解实现服务启动时自动运行某个方法。

@PostConstruct:适用于简单的初始化操作。CommandLineRunner和ApplicationRunner:适用于需要在应用启动后立即执行的任务,特别是需要访问命令行参数或应用参数的情况。@EventListener:适用于需要在应用启动完成时执行的任务。@Scheduled:适用于定时任务,但也可以用于一次性任务。

2024-11-04 12:15:00 407

原创 使用mybatisplus执行批量保存时出现错误:Error: Cannot execute table Method, ClassGenricType not found

使用mybatisplus执行批量保存时出现错误:Error: Cannot execute table Method, ClassGenricType not found

2024-11-03 22:32:00 1119

原创 git使用HTTP的形式克隆gitlab项目报错:OpenSSL/3.2.3: error:0A0000C6:SSL routines::packet length too long

git使用HTTP的形式克隆gitlab项目报错:OpenSSL/3.2.3: error:0A0000C6:SSL routines::packet length too long

2024-11-03 21:14:46 1375 2

原创 关于@TableField中TypeHandler属性,自定义的类型处理器的使用(密码加密与解密举例)

在 MyBatis 和 MyBatis-Plus 中,是一个用于处理 Java 类型和 JDBC 类型之间转换的接口。MyBatis 默认已经提供了很多类型处理器,用于处理常见的Java类型与JDBC类型之间的转换。然而,在某些特定场景下,通过自定义将Java对象转换为数据库中特定的列类型(如枚举类型、加密后的字符串等)。从数据库读取特定列类型时,转换为Java中的对象。字段类型处理器 | MyBatis-Plus创建 TypeHandler 类实现接口。或者继承类,它提供了默认实现的一些方法。

2024-07-28 12:38:34 2089 2

原创 关于@JsonSerialize序列化与@JsonDeserialize反序列化注解的使用(密码加密与解密举例)

@JsonSerialize 和 @JsonDeserialize 是 Jackson 库提供的注解,用于在序列化(将对象转换为 JSON 字符串)和反序列化(将 JSON 字符串转换为对象)过程中对特定字段进行自定义处理。这些注解允许你控制 JSON 数据的格式和内容,而不需要改变对象本身的数据结构。举例:(1)数据库中性别字段为数字,将性别转化为汉字给前端进行展示(2)保存密码时,进行加密存储,查询时给它明文展示(这里只是举例查所有,真正的场景肯定不能这样搞)

2024-07-28 11:17:07 1769

原创 spring-boot3.x整合Swagger 3 (OpenAPI 3) +knife4j

OpenAPI阶段的Swagger也被称为Swagger 3.0。在Swagger 2.0后,Swagger规范正式更名为OpenAPI规范,并且根据OpenAPI规范的版本号进行了更新。因此,Swagger 3.0对应的就是OpenAPI 3.0版本,它是Swagger在OpenAPI阶段推出的一个重要版本。与前几个版本相比,Swagger 3.0更加强调对RESTful API的支持和规范化,提供了更丰富和灵活的定义方式,并且可以用于自动生成文档、客户端代码、服务器代码和测试工具等。

2024-07-21 22:41:49 1655

原创 idea连接mysql生成对象实体,Mybatis-X插件自动生成代码

如果下载有问题,在这边可以配置驱动,根据自己的mysql版本来配置:idea版本不一样,步骤会有所不同配置根据自己情况修改:1.4开始生成2、Mybatis-X插件自动生成代码2.1安装Mybatis-X插件File–>Settings–>Plugins–>Marketplace,搜索MyBatisX–>install(1)侧边栏打开数据库,选择要生成代码的表格,在表名上右击,点击MybatisX-Generator(2)设置类名生成规则及生成代码的路径路径的生成按照物理路径是: m

2024-07-21 14:57:22 1445

原创 Java笔试分享

java笔试分享

2024-07-20 23:20:05 740

原创 Spring中@PostConstruct注解的使用

@PostConstruct是 Java 中的一个注解,用于在 Spring 框架中指定初始化方法。当一个 Bean 被实例化之后,如果该 Bean 类中存在用注解的方法,那么该方法会在依赖注入(DI)完成后被自动调用,用于执行一些自定义的初始化操作。

2024-07-20 22:43:35 1364

原创 java八股文-消息中间件面试题-参考回答

本文是消息队列八股文,主要包含RabbitMQ与Kafka相关

2024-07-15 23:57:23 1017

原创 Spring AOP相关注解与execution 切点表达式概述

Spring AOP(面向切面编程)通过一系列注解来实现切面的定义和织入,从而达到将横切关注点(比如日志记录、事务管理、安全性检查等)与核心业务逻辑分离的目的。以下是Spring AOP中一些关键的注解及其用途切入点声明,即切入到哪些目标类的目标方法。既可以用 execution 切点表达式, 也可以是 annotation 指定拦截拥有指定的方法.value 属性指定切入点表达式,默认为 "",用于被通知注解引用,这样通知注解只需要关联此切入点声明即可,无需再重复写切入点表达式。

2024-04-29 17:13:16 1286 2

原创 Spring IOC 和 AOP

Spring框架中的IoC(Inverse of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)是其两大核心特性,它们共同为Java应用程序带来了更高的灵活性、可维护性和松耦合度。

2024-04-29 16:21:54 2347 1

原创 关于java对接微信公众号的简单功能实现

本文通过简单的demo练习,带你了解公众号的对接流程简单的功能主要有:(1)个性化菜单:对接聚合数据,完成笑话大全、谜语大全、心灵鸡汤、成语接龙等有趣功能(2)测试模板消息相关(3)对接百度AI开放平台实现网络图片的文字识别功能。本文只是一些自己学习的记录,完成版本请查看另一篇博客,功能均已实现。

2024-04-26 17:14:33 2217 8

原创 关于外网java后端服务访问内网minio中间件,因连接minio超时,启动失败问题

注:服务器情况:2台服务器,内网服务器包含(activemq、minio、nginx、redis、mysql、后端java服务)。外网服务器只有后端java服务,访问内网的中间件(内网服务器开放了部分指定端口)问题背景:因断电导致服务器宕机,需服务重启。内网java服务重启成功,外网java服务重启失败。错误信息,minio连接超时。

2024-04-17 15:16:35 1692 1

原创 Elasticsearch安装、启动异常问题总结

Elasticsearch安装、启动异常问题总结

2024-04-12 16:45:21 1545 1

原创 Linux环境Elasticsearch、Kibana、IK分词器,最全安装步骤

Elasticsearch、Kibana、IK分词器的最全安装步骤

2024-04-12 16:32:28 2539

原创 关于SpringBoot 如何动态切换 logback 日志的输出级别

本文介绍了在SpringBoot应用中如何动态设置Logback日志的输出级别,并且不影响服务正常运行。通过接口方式实现日志级别的动态调整,可以方便地适应不同环境、不同业务场景下的日志需求,提高开发和运维的效率。在实际应用中,还需要注意线程安全、配置刷新和权限控制等问题。

2024-03-08 17:00:35 3187

原创 关于配置微信公众号网页授权域名失败的解决方案

关于配置微信公众号网页授权域名失败的解决方案。失败信息为:访问到cccgcold.cn/MP_verify_fOHCyA7d7qp4RB82.txt内容与下载文件不符,请检查文件内容或重新上传原始文件

2024-03-08 16:02:17 1892

原创 java使用Apache POI实现Excel的导出下载与读取功能

如果你需要处理复杂的Excel文件并且数据量适中,Apache POI是一个更好的选择

2024-03-01 13:08:02 2434 1

原创 关于SpringBoot如何整合Redis

Redis诞生于2009年全称是Remote Dictionary Server 远程词典服务器,是一个基于内存的键值型NoSQL数据库。特征:- 键值(key-value)型,value支持多种不同数据结构,功能丰富- 单线程,每个命令具备原子性- 低延迟,速度快(基于内存、IO多路复用、良好的编码)。- 支持数据持久化- 支持主从集群、分片集群- 支持多语言客户端

2023-11-19 22:48:00 826

原创 关于使用java对接WebService接口

Webservice是一种跨平台,跨语言的远程调用技术。它可以实现在不同平台和语言之间的数据交互和通信,例如在Java平台上创建的服务可以通过Webservice被.NET或其他语言编写的客户端调用。Webservice的标准包括WS-*系列标准(如SOAP、WSDL等),RESTful风格的Webservice采用HTTP协议传输数据,并使用JSON格式封装数据内容。

2023-11-16 23:48:57 3727 2

原创 关于JSON字符串中的字段名与Java类中的字段名不匹配的解决方法(@JsonProperty(““) 与@JSONField(name = ““)的使用 )

关于JSON字符串中的字段名与Java类中的字段名不匹配的解决方法(@JsonProperty("") 与@JSONField(name = "")的使用 )

2023-11-11 16:26:17 3780 2

原创 配置SpringBoot项目支持https与http双协议(微信小程序只支持https协议)

配置SpringBoot项目支持https与http双协议(微信小程序只支持https协议) 配置双协议的原因?1. SpringBoot项目,默认支持的是http协议。2. 微信小程序开发中,对网络数据请求做出了限制(只支持https协议)

2023-08-18 15:28:36 1365 1

原创 hive的metastore和hiveserver2服务的启动

nohup: 放在命令开头,表示不挂起,也就是关闭终端进程也继续保持运行状态/dev/null:是 Linux 文件系统中的一个文件,被称为黑洞,所有写入改文件的内容 都会被自动丢弃2>&1: 表示将错误输出 重定向 到标准输出上第一个2表示错误输出,另外0表示标准输入,1表示标准输出&: 放在命令结尾,表示后台运行一般会组合使用: nohup [xxx 命令操作]> file 2>&1 &,表示将 xxx 命令运行的结 果输出到 file 中,并保持命令启动的进程在后台运行。

2023-08-04 17:25:38 1870 1

原创 将旧hdfs中的文件快速迁移到新hdfs中

之前旧的hdfs服务不用了,想要新搭一个hdfs服务,但旧的数据还想要使用,那么我们怎么将旧hdfs服务中的数据快速迁移到新hdfs服务中呢?

2023-08-04 17:10:46 1490 1

原创 数据工厂-画布-条件组合组件/过滤组件-后端sql组装和业务逻辑(拼接复杂的SQL)

使用java封装复杂的过滤sql

2023-07-31 17:47:10 304 1

原创 《锋迷商城》学习笔记1-前后端分离

本文是千锋《锋迷商城》项目的学习笔记课程大纲

2023-07-30 15:38:49 1120 1

原创 深入理解Lambda表达式-函数式编程-Stream流(最全学习笔记)

Lambad表达式:Lambda是JDK8中一个语法糖。他可以对某些罩名内部类的写法进行简化。它是函数式编程思想的一个重要体现。让我们不用关注是什么对象。而是更关注我们对数据进行了什么操作。

2023-07-29 17:49:40 482 2

原创 使用JavaApi实现模拟Kafka的消息生产者与发送者

(1)Producer:消息生产者,就是向 Kafka broker 发消息的客户端。(2)Consumer:消息消费者,向 Kafka broker 取消息的客户端。(3)Consumer Group(CG):消费者组,由多个 consumer 组成。消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个组内消费者消费;消费者组之间互不影响。所有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者。

2023-07-28 16:54:42 547 1

海康hls方式取流demo

海康hls方式取流demo

2024-04-25

海康威视-OpenAPI安全认证库-JAVA版本

海康威视-OpenAPI安全认证库-JAVA版本

2024-04-25

千锋《锋迷商城》项目学习笔记2-分布式与微服务

千锋《锋迷商城》项目学习笔记2-分布式与微服务

2023-07-30

千锋《锋迷商城》项目学习笔记1-前后端分离

千锋《锋迷商城》项目学习笔记1-前后端分离

2023-07-30

空空如也

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

TA关注的人

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