- 博客(563)
- 收藏
- 关注

原创 框架源码学习收藏汇总
Springsecurity过滤器和方法拦截器 https://www.processon.com/view/link/61fe51221efad479c07aa7b7WebSecurity&HttpSecurity&AuthenticationManager三大构建者 https://www.processon.com/view/link/61ffe49f6376890390cf9e28SecurityConfigurer配置类继承体系(创建HttpSecurity) https://
2022-02-27 09:35:06
578
原创 OkHttp&HttpClient
okhttp githubokhttp官方使用文档SpringBoot 整合okHttp okhttp3用法httpcomponents-client githubapache httpclient文档apache httpclient文档详细使用
2025-04-02 19:21:53
66
原创 Dubbo分布式框架学习(2)
⾃研:rediszookeeper(dubbo的推荐):zk是⼀个分布式服务组件中的⼀个⾮常重要的组件,⾥⾯ 涉及到很多优秀的分布式设计思想,堪称⿐祖地位。nacos:nacos既可以作为注册中⼼使⽤,也可以作为分布式配置中⼼使⽤eureka:eureka是spring cloud netflix框架中著名的注册中⼼,⾥⾯的服务的续约、⼼ 跳等等的设计⾮常的经典。dubbo是⼀款⾼性能的rpc框架。什么是rpc呢?
2025-03-31 14:27:45
706
原创 Dubbo分布式框架学习(1)
互联网项目特点:用户多流量大,并发高海量数据易受攻击功能繁琐变更快衡量网站的性能指标:架构目标高性能:提供快速的访问体验。高可用:网站服务一直可以正常访问。可伸缩:通过硬件增加/减少,提高/降低处理能力。高可扩展:系统间耦合低,方便的通过新增/移除方式,增加/减少新的功能/模块。安全性:提供网站安全访问和数据加密,安全存储等策略。敏捷性:随需应变,快速响应。:很多“人”一起 ,干一样的事。一个业务模块,部署在多台服务器上。:很多“人”一起,干不一样的事。这些不一样的事,合起来是一件大事。一个大的业务系统,拆
2025-03-30 21:53:43
766
原创 Spring Cloud&Alibaba项目创建和版本管理
就像Spring Boot一样,许多Spring Cloud项目都包含启动器,您可以将其添加为依赖项,以便将各种云原生功能添加到您的项目中。启动器名称记录在各个项目中。项目的版本号格式为 x.x.x 的形式,其中 x 的数值类型为数字,从 0 开始取值,且不限于 0~9 这个范围。此模块中提供了演示用的 example ,您可以阅读对应的 example 工程下的 readme 文档,根据里面的步骤来体验。(java的版本,springboot的版本,spring cloud的版本要对应上)
2025-03-15 16:38:31
876
原创 阿里百炼&Spring AI Alibaba
此仓库中包含许多 Example 来介绍 Spring AI Alibaba 从基础到高级的各种用法和 AI 项目的最佳实践。
2025-03-15 11:07:25
942
原创 Netty启动源码&NioEventLoop剖析&accept剖析&read剖析&write剖析
入口关键代码(1、注意main线程和nio线程的切换; 2、initAndRegister 对应 nio中 创建ServerSocketChannel 和 把ServerSocketChannel注册到selector上 3、doBind0 对应 nio中 bind监听端口)// 1. 执行初始化和注册 regFuture 会由 initAndRegister 设置其是否完成,从而回调 3.2 处代码= null) {
2025-03-13 21:13:45
1230
原创 APlayer漂亮的音乐播放器
/ 值为:'auto', 'hls', 'normal' or other custom type。// 值为:'auto', 'hls', 'normal' or other custom type。: 设置播放器模式,mode 取值应为 'mini' 或 'normal'// 预加载,值为 'none', 'metadata', 'auto': 返回播放器当前模式,'mini' 或 'normal'// 播放顺序,值为 'list', 'random'// 主题色, 优先级高于上面的theme。
2025-03-11 22:15:32
746
原创 MVCC多版本并发控制详解
MVCC 通过多版本数据、快照读和版本可见性规则,在保证事务隔离性的同时显著提升了并发性能,是现代数据库(如 MySQL、PostgreSQL)实现高并发的核心技术之一。其核心是以空间换时间,通过存储多个版本来避免锁竞争。MVCC 是手段,隔离级别是目标MVCC 通过多版本和快照读实现高并发,但具体行为由隔离级别决定。在读未提交级别下,MVCC 的快照机制被绕过,直接读取最新数据(包括未提交版本)。你的质疑非常关键这反映了隔离级别与 MVCC 的关系需要更清晰的表述。
2025-03-11 22:02:19
1049
原创 webflux响应式编程
Java8语法糖:2、Function在Java中,函数式接口是只包含一个抽象方法的接口。它们是支持Lambda表达式的基础,因为Lambda表达式需要一个目标类型,这个目标类型必须是一个函数式接口。函数式接口的出入参定义:1、有入参,无出参【消费者】: function.accept2、有入参,有出参【多功能函数】: function.apply3、无入参,无出参【普通函数】:4、无入参 ,有出参【提供者】: supplier.get()java.util.function包下的所有f
2025-03-08 18:46:36
653
原创 springboot对接deepseek & sse流式输出 & 多轮对话推理demo & 接入豆包/千帆/讯飞
【代码】deepseek & sse流式输出。
2025-02-25 23:17:44
782
原创 webflux&webclient
springboot-webFlux的webclient详细使用介绍,细节拉满【SpringBoot WEB 系列】WebClient 之基础使用姿势WebClient 同步、异步调用实现对比
2025-02-25 19:13:02
298
原创 sse服务端消息推送
WebConfigapplication.ymlSseControllerSseApp连接sse服务:推送数据:关闭sse:使用vue连接sse服务端
2025-02-24 17:05:12
1002
原创 javacv将mp4视频切分为m3u8视频并播放
将上传的视频文件,使用javacv拆分成m3u8文件和ts文件,m3u8文件和ts文件通过nginx访问,而key文件则通过web服务来获取。使用dplayer播放视频。也可以使用ffmpeg命令来做,可以参考上面链接。
2025-02-17 23:08:23
1034
原创 springboot-ffmpeg-m3u8-convertor & nplayer视频播放弹幕 & artplayer视频弹幕
springboot+ffmpeg,将视频转换为 m3u8 格式。转换方式有:指定文件路径 、文件上传转换两种转换方式。- 内部封装了操作ffmpeg命令的java类库。
2025-02-16 20:22:14
459
原创 玩转数据结构和算法
3、栈,基于动态数组实现栈,栈的应用:系统的线程栈、撤销/恢复的实现、左右括号的匹配。2、基于数组实现动态数组。1、数组实现增删改查。
2025-02-16 00:07:12
698
原创 并发工具CountDownLatch、CyclicBarrier、Semaphore
*** 描述:工厂中,质检,5个工人检查,所有人都认为通过,才通过*/i < 5;i++) {@Overridetry {System.out.println("No." + no + "完成了检查。");System.out.println("等待5个人检查完.....");// 这里也可以设置超时等待时间, 如: latch.await(5, TimeUnit.SECONDS);System.out.println("所有人都完成了工作,进入下一个环节。");
2025-02-08 23:09:38
638
原创 xxl-job学习
xxl-job官方文档【分布式任务调度】三、XXL-JOB详细介绍xxljob从入门到精通-全网段最全解说XXL-JOB分布式任务调度框架(一)-基础入门XXL-JOB分布式任务调度框架(二)-策略详解XXL-JOB分布式任务调度框架(三)-集群部署XXL-JOB分布式任务调度框架(四)-源码分析-调度中心对执行器的上下线感知实现原理XXL-JOB分布式任务调度框架(五)-源码分析-任务调度执行流程及实现原理xxl-job源码解析(看这一篇就够了,超简约且详细)【XXL-JOB】XXL-JOB部
2025-01-19 11:35:20
1056
原创 sentinel微服务保护
什么是雪崩问题?微服务之间相互调用,因为调用链中的一个服务故障,引起整个链路都无法访问的情况。限流是对服务的保护,避免因瞬间高并发流量而导致服务故障,进而避免雪崩。是一种预防措施。超时处理、线程隔离、降级熔断是在部分服务故障时,将故障控制在一定范围,避免雪崩。是一种补救措施。Sentinel是阿里巴巴开源的一款微服务流量控制组件。流控模式有哪些?直接:对当前资源限流关联:高优先级资源触发阈值,对低优先级资源限流。链路:阈值统计时,只统计从指定资源进入当前资源的请求,是对请求来源的限流流控效果有哪些。
2025-01-17 17:50:23
616
原创 CSS布局与响应式
学习链接Grid网格布局前端五大主流网页布局flex布局看这一篇就够了grid布局看这一篇就够了用六个案例学会响应式布局伸缩盒+响应式页面布局实战实现响应式布局的五种方式 - csdn如何完成响应式布局,有几种方法?看这个就够了响应式布局总结Flexbox 打造栅格系统CSS中 自定义属性(变量)详解CSS 之 z-index 属性详解CSS深入理解z-index(z-index相关知识总结)文章目录学习链接第一章 介绍1、课程介绍现代布局四大核心技术课程收获涵盖内容2、常见布局
2025-01-16 21:29:08
1224
原创 Grid网格布局
【grid布局看这一篇就够了】 - 原文链接flex布局看这一篇就够了最强大的 CSS 布局 —— Grid 布局css grid布局,手把手教你grid布局,包你学会,史上最全面详细的课程 - B站Grid - 英文文档 布局即网格布局,目前唯一一种 二维布局,是最强大的的 布局方案。它可以轻松实现以下布局,这是 布局无法一次性解决的声明定义容器里面包含着项目元素,使用 或 声明为网格容器。2、grid布局的作用grid与flex布局的区别 布局是轴线布局,只能指定 “项目” 针对轴线的
2025-01-12 21:48:20
661
原创 node&npm&nrm&nvm
Node.js 是一个能够在服务器端运行 JavaScript 的开放源代码、跨平台 JavaScript 运行环境。Node.js 由 Node.js 基金会持有和维护,并与 Linux 基金会有合作关系。Node.js 采用 Google 开发的 V8 运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高性能,可优化应用程序的传输量和规模。这些技术通常用于数据密集的即时应用程序。Node.js 大部分基本模块都用 JavaScript 语言编写。
2024-12-31 23:10:05
981
原创 Java基础-队列
ABQ中用来存储元素的实际上是一个数组,takeIndex和putIndex分别表示队首元素和队尾元素的下标,count表示队列中元素个数,lock是一个可重入锁,notEmpty和notFull是等待条件。Deque,Double ended queue,Queue的子接口,定义头尾操作功能,既可在队头添加(删除)元素,也可在队尾添加(删除)元素。循环队列,将单队列的首位进行相连,形成一个圆圈,这样就不会发生角标越界的情况,如distruptor实现;问题,尾指针指向一个不存在的数组索引。
2024-12-31 23:09:21
541
原创 uniapp-vue3(下)
咸虾米壁纸API 接口列表咸虾米壁纸开源地址咸虾米壁纸扫码体验(搜索咸虾米壁纸)7.3.banner海报swiper轮播器7.4.使用swiper的纵向轮播做公告区域7.5.每日推荐滑动scroll-view布局7.6.组件具名插槽定义公共标题模块7.7.细节拉满磨砂背景定位布局做专题组件7.8.设置项目底部tab页面切换标签7.10.个人中心页面布局7.11.ifdef条件编译实现多终端匹配和客服消息微信小程序添加客服7.12.设置页面全局渐变线性渐变背景色1、将p
2024-12-29 10:09:47
1352
原创 uniapp-vue3(上)
微信扫码体验“咸虾米壁纸”最终项目零基础入门uniapp Vue3组合式API版本到咸虾米壁纸项目实战,开发打包微信小程序、抖音小程序、H5、安卓APP客户端等 - B站视频咸虾米壁纸对应的配套资料 gitee千锋教育前端uniapp入门到实战项目教程(微信小程序+H5+安卓APP+IOS APP) - B站视频uni-pay支付商城项目开发,uniapp及uniCloud云开发进阶课,自建微信小程序购物商店项目实战『布局篇』各种不同类型的for循环遍历 - B站视频vue3中computed
2024-12-28 21:20:44
1211
原创 zlmediakit搭建直播推流服务
开源流媒体框架ZLMediaKit C API JAVA实现,打造属于自己的流媒体服务。(基于C++开发的高性能流媒体服务器)- docker镜像部署。
2024-12-18 21:59:09
734
原创 KeepAlive与RouterView缓存
'---【ChatDetail组件】取消激活---''---【ChatDetail组件】激活---''---【ChatDetail组件】创建---''---【ChatDetail组件】销毁---''【Home组件】创建''【Home组件】销毁''【Chat组件】创建''【Chat组件】销毁'
2024-12-15 16:21:39
1080
原创 kafka学习笔记
kafka消息中间件精讲 - B站动力节点JDK17在Windows安装及环境变量配置超详细的教程Windows 多版本java 装多个版本jdkWindows同时安装多个JDKjdk17下载与安装教程(win10),超详细jdk17-archive-downloads如何在IDEA中配置指定JDK版本?轻松解决!!!IDEA配置JDKIDEA 2021.1.3下载和安装(解决IDEA过期问题) Idea 2021.3 破解 windowIDEA2023隐藏.idea和.iml文件的实现步骤IDEA为所有项
2024-12-10 23:31:45
1271
原创 springboot整合canal
canal 译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费,canal可以用来监控数据库数据的变化,从而获得新增数据,或者修改的数据。canal原理就是伪装成mysql的从节点,从而订阅master节点的binlog日志canal模拟mysql slave的交互协议,伪装自己为mysql slave,向mysql master发送dump协议mysql master收到dump请求,开始推送binary log给slave(也就是canal)
2024-12-07 16:28:57
748
原创 elasticsearch(三)
默认的拼音分词器会将每个汉字单独分为拼音,而我们希望的是每个词条形成一组拼音,需要对拼音分词器做个性化定制,形成自定义分词器。:在tokenizer之前对文本进行处理。例如删除字符、替换字符tokenizer:将文本按照一定的规则切割成词条(term)。例如keyword,就是不分词;还有ik_smart:将tokenizer输出的词条做进一步处理。例如大小写转换、同义词处理、拼音处理等文档分词时会依次由这三部分来处理文档:PUT /test"analyzer": { // 自定义分词器。
2024-12-05 22:32:35
999
原创 java调用cmd&sh命令
ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例可用来控制进程并获取相关信息。解决编码问题是调用CMD命令时必须关注的重要问题,通过设置正确的编码,可以避免输出结果的乱码,确保程序的稳定运行。在实际应用中,合理使用Runtime类或ProcessBuilder类,处理编码问题,可以实现更灵活、稳健的CMD命令调用。在Java开发中,有时候需要与操作系统的命令行交互,执行特定的CMD命令或脚本。
2024-12-04 22:57:44
1155
原创 EasyMedia播放rtsp&rtmp视频流(flv&hls)
Springboot、netty实现的http-flv、websocket-flv直播点播,支持rtsp、h264、h265、rtmp等多种源,h5纯js播放(不依赖flash),不需要nginx等第三方拉流服务,低延迟(支持识别h264、aac编码自动转封装)
2024-12-02 22:57:36
1884
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人