自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(160)
  • 问答 (1)
  • 收藏
  • 关注

原创 吊打面试官系列:BeanFactory和FactoryBean的区别

面试造火箭,入职拧螺丝。这是候选人的进入职场的切身感受。坦白来讲,日常业务开发中根本没有什么用。但是如果涉及架构、脚手架、开发封装或者源码理解,却是大有用处。今天,我们来看一个高频面试题:`BeanFactory`和`FactoryBean`的区别。

2025-06-11 09:06:25 748

原创 吊打面试官系列:Spring为什么不推荐使用字段注入?

在开发过程中,肯定会使用依赖注入。大多数情况下会通过`@Autowired`注解作用在字段上,从而将`Bean`注入进来。但是`Spring`官网并没有推荐使用这种方式。包括我们常用的开发工具Idea,也会有警告提示。这是为什么呢?

2025-06-09 10:26:45 517

原创 吊打面试官系列:深入理解Spring的IOC容器

管理的对象,使用的越多,创建的对象就越多,因此占用的资源也就会越多,如果循环创建对象,可能造成内存溢出。生态的时候,我们自己需要控制对象的创建和管理。容器统一管理,使用的时候通过注入的方式直接获取就好了。的思想很简单,但是里面的处理逻辑非常复杂,以兼容各种情况,这就是框架的魅力。管理的对象,使用更加灵活,不受框架的限制,可以用在任何地方。时代的到来,代替了我们对对象的管理。的对象太多了,导致现实的反噬,没有女朋友。对比非空参构造的对象,如果发生参数的修改,对于非。管理的对象,只需要修改实例化的地方即可。

2025-06-06 09:07:55 554

原创 揭秘自定义注解,背后的面向切面编程(AOP)的艺术

Target(ElementType.METHOD) // 注解用在方法上@Retention(RetentionPolicy.RUNTIME) // 运行时保留/*** 操作名称**//*** 内容**//*** 备注**/用来标记切点位置。@Aspect@Component/*** @Description: 切点**/try {// 封装日志信息// 请求参数// 异常信息// 操作// 内容// 备注// 插入日志信息。

2025-06-05 09:15:09 239

原创 5分钟了解,Mysql事务事务隔离级别

之前介绍了声明式事务,其中的一个属性就是事务的隔离级别`isolation`。今天我们以Mysql为例,深入介绍一下事务的隔离隔离级别

2025-06-04 13:19:03 863

原创 面试实习生后,理解了王树国校长三问中国教育的演讲

如果梁文峰继续读博士,还有今天的DeepSeek吗?如果王兴兴继续读博士,还有今天的宇树科技吗?如果汪滔继续读博士,还有今天的大疆吗?

2025-06-04 09:26:49 299

原创 解密Spring事务底层:你的@Transactional真的安全吗?

声明式事务的使用虽然入门简单,一个简单的注解就可以开启事务。但是`@Transactional`的属性影响着事务的控制,事务的声明也是有条件的,稍不注意就可能导致事务失效。我们一起来深入了解一下吧!

2025-05-30 09:20:35 275

原创 事务颗粒度的控制:声明式事务 VS 编程式事务

`Spring`事务是什么?Spring事务是一个并发控制的单位,开启事务之后,在同一个事务里的一系列操作要么全成功、要么全失败。简单来讲就是一损俱损,一荣俱荣。

2025-05-29 09:28:28 655

原创 浅谈技术专利,3分钟揭开神秘面纱

初次接触`专利`这个名词,那是在大学时代,何其高大上。宿舍舍友因为参加学校的发明比赛中获奖,并申请了国家专利,也曾风光无线。感觉自己和`专利`之间遥不可及。

2025-05-27 11:34:19 650

原创 谁说程序员不懂浪漫:Spring AI 1.0 GA告白520

2025年5月20日`Spring AI 1.0 GA`正式发布,标志着`Spring AI`的稳定版正式落地。随着大模型AI的广泛应用,`Spring`作为程序员背后的一站式生态圈,`Spring AI`在520这个浪漫的日子,正式告白所有程序员,仿佛在说,有我在,你们放心使用吧!

2025-05-26 13:26:44 726

原创 版本管理工具:Git VS SVN,你会怎么选?

前一段时间分享了关于`Git`工具的使用。因为笔者一直用的是`SVN`,所以本章对比一下`Git`和`SVN`都有哪些异同点。选择的版本管理工具的时候应该怎么选?

2025-05-23 16:16:10 888

原创 Git实战演练,模拟日常使用,快速掌握命令

上一期借助`Idea`,完成了`Git`仓库的建立、配置、代码提交等操作,初步入门了`Git`的使用。然而日常开发中经常面临各种各样的问题,入门级的命令远远不够使用。这一期,我们将展开介绍`Git`的日常处理命令,解决日常问题,熟悉`Git`操作。

2025-05-22 15:25:40 925

原创 借助IEDA ,Git版本管理工具快速入门

直使用`SVN`作为版本管理工具,直到公司新来的一批同事,看到我们使用的`SVN`都纷纷吐槽,什么年代了,还使用`SVN`。聊下来,才知道人家公司早早就将`SVN`切成了`Git`工具,并吐槽`SVN`的各种弊端

2025-05-21 16:31:09 1134

原创 程序员注意!这些代码可能会让你“吃牢饭”!

不知道你有没有听过面向监狱编程,可能你好好的码着代码,就就被帽子叔叔带走了。程序员早已不是免责职业,你的键盘可能正在敲响监狱的大门!

2025-05-21 10:51:53 837

原创 XPath爬虫实战:5分钟轻松实现当当网图书列表内容抓取

我们已经分了两节介绍了`XPath`的基础用法、进阶技巧以及特殊神技,但都是基于浏览器的测试的,并没有实际运用的场景。本节我们将通过实际的案例应用`Xpath`技术。

2025-05-20 13:59:48 1051

原创 XPath高阶玩法:灵活使用Axes技巧+函数,爬虫效率翻倍!

上一期主要介绍了`XPath`的基本语法,以及常用的技巧,用于快速入门。但是使用的技巧中引入了轴(Axes)以及函数的概念,为了能够更加游刃有余的使用进阶技巧,我们完整的介绍一下`XPath` 的高阶玩法。

2025-05-19 10:53:35 918

原创 从零到高手:掌握XPath的5个神技,让你数据抓取快人10倍

同事每天准点下班,而我还在加班写爬虫?项目Deadline逼近,数据却卡在网页结构里抽不出来?答案可能藏在`XPath`里。无论是爬虫、还是现在流行的大模型的`Agent`工作流,解析网页数据的工具都可能用到`Xpath`。`Xpath`到底是什么呢?

2025-05-16 13:25:14 975

原创 开源了,优雅的Controller,应该这样写!

控制层的优雅写法,技术文章中多次被各个大佬讲过,但是都只是教你如何处理,却没有现成的工具封装。为了能够更好的使用优雅的写法,我自己从总结了常用的类型、以及以及处理方案并开源,欢迎大家使用

2025-05-16 09:25:19 260

原创 爽呀,JDK17里面可以使用的神仙语法(三)

继续分享JDK17里面的好玩语法,第三弹

2025-05-15 11:12:47 320

原创 爽呀,JDK17里面可以使用的神仙语法(二)

DK17里面可以使用的神仙语法,第二弹

2025-05-14 10:38:55 265

原创 爽呀,JDK17里面可以使用的神仙语法(一)

从JDK8升级到JDK17,里面新增了有很多神仙级的语法,用起来非常丝滑,看起来也更加清爽。下来我们详细了解一下

2025-05-13 14:00:56 370

原创 你还在用JDK8么?给你一个升级JDK17的理由,赶快升级!

JDK自从被Oracle收购以后,那升级的速度和手机更新换代一样快,2025 年 3 月 18 日不是才发布了JDK24么。这速度真的是让开发者来不及追赶,上一个版本还没有完全弄明白,下一个版本就已经发布了。我们一起看看JDK17里面都有什么可用

2025-05-13 09:30:44 1038

原创 Spring MVC父子容器背后的顺序关系

Spring的父子容器主要出现在Spring MVC时代,随着Spring Boot这位行业颠覆者的问世,以其简单的配置,快速搭建Web项目的能力,迅速取代Spring MVC的江湖地位。

2025-05-12 15:57:02 797

原创 登录双Token设计机制,背后的安全策略

登录功能是我们常见的功能,无论是Web应用还是移动设备,用户的认证和授权是确保应用安全性的重要环节。单`token`机制但从应用的角度已经完全可以满足功能的完成,但是从安全性角度考虑的话,还是有安全隐患的。今天介绍一下双token机制

2025-05-12 09:28:28 1136

原创 Redis 8.0携新功能,重新开源

Redis 8.0 弃用了以前的 Redis 和 Redis Stack 版本,不再需要独立的 RediSearch、RedisJSON、RedisTimeSeries 和 RedisBloom,因为它们现在是 Redis 的一部分。Redis Query Engine 除了键查找外,还能实现快速数据访问,可创建哈希和 JSON 数据结构的二级索引,支持向量搜索、精确匹配和语义搜索等,并具备词干提取、同义词扩展和模糊匹配等功能。

2025-05-09 16:45:26 1165

原创 程序员图片处理利器:分享两款图片处理工具,让图片处理后顾无忧

在日常开发中,尤其在电商领域,图片的处理犹如家常便饭。前端有自己的一套框架处理,如`canvas`等工具。只要前端能做就交给前端团队处理了。我们后端应该怎么处理呢

2025-05-07 16:40:17 826

原创 Cherry Studio搭载自定义MCP服务,精准引导大模型

上一节介绍了手搓MCP服务和客户端,并且采用了服务器发送事件(SSE)的形式调用,完成了基本调用。当然客户端也可以使用`Cherry Studio` 客户端直接调用,输入服务端的IP和端口即可。

2025-05-07 09:27:57 824

原创 基于Spring AI 搭建MCP服务,保姆级教程来了!

之前分享过一篇《CherryStudio+百度地图MCP为大模型赋能实时位置》的文章,讲解了CherryStudio搭载百度地图MCP服务实时获取位置,使用了第三方的MCP服务。大家有没有发现一个问题:搭建的客户端,调用了MCP服务以后,除了MCP服务相关的问题他可能给出回答,其他的他就不能回答了,这个是什么原因呢?是 Spring AI MCP 框架中用于快速暴露业务能力为 AI 工具的核心注解,该注解实现 Java 方法与 MCP 协议工具的自动映射,并且可以通过注解的属性。今天我们一起来探秘!

2025-05-06 13:29:47 6719 18

原创 Qwen3来了,看看有哪些特性

Qwen3是Qwen大语言模型系列的新一代产品,在自然语言处理和多模态能力上取得显著进展。它基于前代成功经验,通过更大数据集、强化架构和优化微调,处理复杂推理、语言理解与生成任务。

2025-05-06 09:33:41 424

原创 行为验证码简化用户操作,取代传统图片验证

天爱验证码可能是java界最好的开源行为验证码,包括了 滑块验证码、点选验证码、行为验证码、旋转验证码, 滑动验证码等。

2025-04-28 10:39:53 583

原创 白嫖!开源Java验证码框架加固业务安全

基于Java的图片验证码功能通过动态生成包含随机字符的干扰图像,可有效防御恶意爬虫、暴力破解等自动化攻击。其实现通常结合图像处理技术与随机算法,通过扭曲变形、噪点干扰及复杂背景设计提升破解难度。然而,验证码设计需兼顾安全性与用户体验,避免过度复杂化导致用户识别困难.

2025-04-27 10:43:32 1442

原创 惊!未实现Serializable竟让第三方接口回调全军覆没

序列化问题看似一个小小的问题,平时可能不注意,自己开发的时候要不要实`java.io.Serializable,心里可能都没有谱。一旦发生线上故障,那就是大问题。

2025-04-25 13:06:45 429

原创 SSE(Server-Sent Events)替代WebSocket实现直播间实时评论功能

SSE是一种用于实现服务器向客户端实时单向推送数据的Web技术。基于HTTP协议,允许[服务器](https://so.csdn.net/so/search?q=服务器&spm=1001.2101.3001.7020)将数据以事件流(Event Stream)的形式发送给客户端。客户端通过建立持久的HTTP连接,并监听事件流,可以实时接收服务器推送的数据

2025-04-25 09:30:26 1216

原创 基于WebSocket模拟直播间评论的实现

之前探索了一下直播间实时评论的的背后技术,这一节,我们将选用最经典WebSocket的模拟这一功能的实现。WebSocket可以基于`Netty`实现,也可以基于Springboot实现。

2025-04-23 10:13:56 727

原创 浅谈直播间实时评论功能的背后技术

随着短视频的火爆,人人直播的时代已经到来,更是降低了直播的门槛。硬是从老牌的直播平台斗鱼、虎牙等分走了大部分流量。直播间少不了博主和粉丝的互动,实时共享粉丝的留言也成了必不可少的功能。B站的弹幕也是类似的功能。那么直播间的评论功能是怎么实现的呢

2025-04-23 09:49:30 810

原创 【Spring Boot配置终极指南】2分钟让你精准指定配置文件,让应用部署游刃有余!

打包好的`Jar` 包,启动时,如何加载外部配置文件呢?技术上,在使用别人开源的工具时,开源工具都会将配置文件暴露在外面,提供给使用者修改配置。

2025-04-21 16:12:45 410

原创 JDBC你肯定听过,那JDBC Loadbalance你用过么?

JDBC Loadbalance是一种通过 JDBC(Java Database Connectivity)实现数据库连接负载均衡的技术,旨在将应用程序的数据库请求智能地分配到多个数据库实例(如主从复制集群、读写分离架构等),以提升性能、可用性和可扩展性。

2025-04-21 10:08:36 911

原创 短信被截断?5分钟用Java打造企业级短链服务

最近做了一个项目,用户提交资料以后,审核完成后,需要短信通知用户,引导用户点击链接查看结果。简单的以为就是放一个链接就好了,结果再设计评审的时候,有老司机提出来:链接太长会被短信分成两条发送,需要用到短链接。通过短链接技术,企业不仅能解决基础的技术限制问题,更能深度挖掘数据价值、优化用户体验,最终实现降本增效与业务增长的双重目标。哈希值的的好处就是同一个链接生成的短码是相同的,哈希存在哈希冲突,不同的链接可能会生成相同的短码。其中短码的生成,可以自定义生成,也可以通过编码算法将原始链接转化成短码。

2025-04-18 14:41:36 1099

原创 京东外卖,探索「距离最近」排序背后的秘密

地理位置(`Geolocation`)距离的不再是简单的距离比较,而是实时的经纬度的计算。因为你在不同的地方,商家离你的位置都是变化的

2025-04-18 09:54:01 857

原创 邮件通知,引发的线上的S级故障

好的架构设计,报警通知必不可少。但是报警用不好,也会造成线上的S级故障。故障的等级各公司的定义标准不一样,总之S级故障在我们公司就是最高级别的故障,需要放下手头所有的事情,全力解决问题。这类故障类似的阿里的P0级故障。

2025-04-16 13:56:02 644

空空如也

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

TA关注的人

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