自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

学习Java技术栈

共同学习和成长

  • 博客(91)
  • 收藏
  • 关注

原创 SpringBoot启动流程图文详解

Spring Boot是一个流行的Java框架,用于简化Spring应用的创建和部署。其启动流程高度自动化,核心在于SpringApplication类的执行。以下是启动流程的关键步骤摘要,基于Spring Boot 3.1.2及以上版本的标准实现。

2025-07-19 15:30:37 3489

原创 Deepseek:AI先淘汰前端开发还是后端开发?

AI技术正深刻影响软件开发领域,前端和后端开发将面临不同变革路径。前端开发中视觉化、组件化的特性更易被AI理解和生成,标准化页面和基础组件工作可能最先被替代;后端开发中复杂业务逻辑和系统设计仍需要人类判断,但标准化API和简单业务代码生成效率将显著提升。综合来看,前端开发可能更早经历工作方式转变,但两者都不会被完全取代,而是向"AI协作工程师"角色演进。开发者应积极拥抱AI工具,同时深化架构设计和业务理解能力,以适应人机协作的新开发范式。

2026-01-10 22:58:35 282

原创 MyBatis 二级缓存详解

MyBatis二级缓存是Mapper级别的缓存,支持多个SqlSession共享,生命周期贯穿整个应用。与一级缓存相比,二级缓存具有更广的作用域和共享性,默认关闭需手动开启。配置方式包括全局开启和Mapper级别配置,支持XML和注解两种方式。二级缓存提供多种回收策略(LRU、FIFO等)和读写模式,并可通过flushCache属性控制缓存刷新。使用时需要注意事务提交后数据才会进入二级缓存,且增删改操作会自动清空对应namespace缓存。此外,MyBatis支持集成Ehcache、Redis等第三方缓存实

2026-01-06 19:00:00 891

原创 深入理解MyBatis 二级缓存

摘要: MyBatis二级缓存通过装饰器模式实现,核心由CachingExecutor和Cache接口体系构成。缓存键CacheKey通过SQL语句、参数等要素生成唯一哈希值,确保查询准确性。实际缓存对象采用多层装饰链(如SynchronizedCache→LoggingCache→LruCache→PerpetualCache),支持LRU淘汰、序列化等功能。TransactionalCacheManager管理事务性缓存操作,在查询时优先检查缓存,未命中则委托底层执行器并缓存结果。该机制需注意事务隔离与

2026-01-06 14:43:24 962

原创 深入理解MyBatis 一级缓存

MyBatis一级缓存摘要 MyBatis一级缓存是SqlSession级别的本地缓存,默认开启且无法关闭。它通过在同一个SqlSession中缓存查询结果,减少数据库访问次数,提高性能。缓存键由MapperId、SQL、参数等元素组成,保证查询唯一性。当执行增删改操作、调用commit/rollback或关闭SqlSession时,缓存会被清空。一级缓存适用于短会话、重复查询场景,但需要注意缓存污染问题,建议控制SqlSession生命周期,合理配置localCacheScope参数。通过代码示例展示了缓

2026-01-06 10:38:56 640

原创 MyBatis-Plus 代码生成器(AutoGenerator)使用指南

MyBatis-Plus AutoGenerator 代码生成器使用指南 摘要:MyBatis-Plus AutoGenerator 是一款高效的工具,可自动生成实体类、Mapper、Service 和 Controller 等分层代码。本文详细介绍了其核心优势、依赖配置、FastAutoGenerator 流式 API 的使用方法,以及完整的 Spring Boot 集成案例。通过全局配置、包配置和策略配置三个核心步骤,开发者可以快速生成符合项目规范的代码,大幅提升开发效率。文章还提供了基于 MySQL

2026-01-01 11:10:53 1194

原创 一文了解MyBatis Generator

MyBatis Generator (MBG) 是 MyBatis 官方提供的代码生成工具,能够自动生成数据库表对应的实体类、Mapper接口和XML映射文件,显著提升开发效率。本文详细介绍了MBG的核心概念、配置方法和使用技巧,包括: 核心优势:减少重复CRUD代码编写,保证代码一致性,支持迭代开发 生成风格:对比了MyBatis3DynamicSql(推荐)、MyBatis3等不同targetRuntime的特点 运行方式:重点推荐Maven插件方式,提供完整配置示例 配置文件:详解generatorC

2026-01-01 10:38:03 764

原创 Git:如何将一个分支的特定提交合并到另一个分支?

Git分支合并指南摘要 本文详细介绍了将特定提交从一个Git分支合并到另一个分支的多种方法。主要内容包括: 核心方法: cherry-pick:最常用方式,可合并单个或多个提交 merge --no-ff:通过临时分支合并部分功能 补丁应用:使用format-patch和apply 操作场景: 合并连续/不连续的提交 处理远程分支提交 选择性合并文件或目录 修改提交信息 冲突解决: 使用--continue、--skip或--abort 配置合并工具(vimdiff/vscode等) 最佳实践: 先拉取最新

2025-12-26 16:33:54 991

原创 Apache Shiro 安全框架入门教程

Apache Shiro 是一个功能强大的 Java 安全框架,提供身份验证、授权、会话管理和加密等安全功能。本文全面介绍了 Shiro 的核心组件与架构,包括 Subject、SecurityManager 和 Realm 等核心概念,以及认证和授权流程。文章详细展示了如何通过 Maven 依赖和 Spring Boot 配置集成 Shiro,并提供了一个完整的员工管理系统实战案例,包含实体类设计、自定义 Realm 实现和权限管理方案。该教程适合 Java 开发者快速掌握 Shiro 框架的实际应用,构

2025-12-25 23:40:20 868

原创 RBAC 基于角色的访问控制模型详解与实践指南

RBAC(基于角色的访问控制)是一种权限管理模型,通过角色关联用户和权限,实现权限管理的解耦。RBAC模型分为多个层级:RBAC0(基础模型)、RBAC1(支持角色继承)、RBAC2(增加约束条件)和RBAC3(完整模型)。核心要素包括用户、角色、权限和会话,其中角色作为中间层简化权限分配。系统设计需考虑数据库表结构(用户表、角色表、权限表及其关联表)以及约束条件(如互斥角色、基数约束等)。RBAC模型广泛应用于企业系统,提供灵活且安全的权限控制方案。

2025-12-25 22:56:02 1188

原创 Spring Boot Email 邮件发送完全指南

Spring Boot提供了强大的邮件发送功能,支持SMTP协议、HTML模板和异步发送。配置简单,只需添加spring-boot-starter-mail依赖并设置SMTP参数即可。支持多种邮件服务商如Gmail、腾讯企业邮箱等。核心API包括JavaMailSender接口,可发送文本、HTML邮件及带附件的邮件。实战场景包含用户注册验证邮件等常见用例,支持异步发送提升性能。Spring Mail还提供调试模式和字符编码配置,确保邮件发送稳定可靠。

2025-12-24 16:22:47 635

原创 UUID vs 自增ID做主键,哪个好?

UUID与自增ID的核心差异在于:自增ID(4-8字节)具有存储紧凑、插入高效、索引友好等优势,适合单体高吞吐应用;而UUID(16字节)具有全局唯一性,适合分布式系统和需要前端生成ID的场景。性能测试显示自增ID插入速度比UUID快2-3倍,因其避免了B+树页分裂。实际应用中,单体系统推荐自增ID,分布式系统推荐UUID,混合方案则可结合两者优势。有序UUID(如UUIDv7)能部分解决性能问题,是折中选择。

2025-12-22 22:18:27 904

原创 Kafka、ActiveMQ、RabbitMQ、RocketMQ对比

本文对四大主流消息队列(Kafka、RabbitMQ、ActiveMQ、RocketMQ)进行了全面对比分析。从核心特性看,Kafka吞吐量最高适合流处理,RabbitMQ协议支持最广,ActiveMQ是传统JMS实现,RocketMQ具备金融级可靠性。架构设计上,Kafka采用分布式日志,RabbitMQ侧重灵活路由,RocketMQ提供主从高可用。适用场景方面,Kafka适合大数据日志,RabbitMQ适合企业集成,ActiveMQ适合传统系统,RocketMQ适合电商金融。文章还对比了消息模型、保证语

2025-12-22 17:09:52 784

原创 为什么Spring 推荐使用构造器注入而非@Autowired字段注入?

摘要:Spring推荐构造器注入优于@Autowired字段注入,主要因为构造器注入支持不可变对象、明确依赖关系、便于测试、提前检测循环依赖,并提升代码可维护性。Spring官方文档强调构造器注入是首选方法,自4.3版本起单构造器可省略@Autowired。实际案例显示构造器注入能避免NPE,性能更优且内存开销更小,特殊场景下可通过Optional处理可选依赖。迁移时可使用Lombok简化代码,循环依赖问题应优先重构而非依赖@Lazy。

2025-12-19 22:00:39 930

原创 @Autowired 与 @Resource区别解析

本文深度解析了Spring框架中@Autowired与@Resource注解的核心区别与使用场景。主要内容包括: 核心对比:@Autowired是Spring原生注解,默认按类型注入;@Resource是JSR-250标准注解,默认按名称注入。 工作原理:分别通过AutowiredAnnotationBeanPostProcessor和CommonAnnotationBeanPostProcessor实现注入逻辑。 使用场景: @Autowired需配合@Qualifier处理多实现情况 @Resource

2025-12-19 17:12:10 535

原创 技术选型分析:MySQL、Redis、MongoDB、ElasticSearch与大数据怎么选?

本文系统对比了MySQL、Redis、MongoDB、ElasticSearch和大数据技术的核心特性与应用场景。通过数据结构模型、性能指标和扩展能力等维度分析,为不同业务需求提供选型指南:MySQL适合结构化事务处理,Redis用于高性能缓存,MongoDB处理半结构化数据,ElasticSearch专注文本搜索,大数据技术应对海量数据处理。文章包含典型应用案例、技术决策树和混合架构示例,并指出常见选型误区。最后强调应根据事务需求、性能要求、数据规模和一致性级别等关键因素选择技术栈,多数实际项目需要组合使

2025-12-11 15:19:02 1039

原创 Elasticsearch 入门指南

Elasticsearch 是一个开源的分布式搜索引擎,适用于快速搜索海量数据、日志分析和智能搜索建议。它具有速度快、易扩展和简单易用的特点,通过 RESTful API 操作。核心概念包括索引(类似数据库)、文档(类似表行)和字段(类似表列)。安装简单,只需下载解压后启动即可。基础操作包括创建索引、添加文档和搜索文档。实战案例展示了如何构建商品搜索系统,支持模糊搜索、价格过滤和分类筛选。常见应用场景包括网站搜索、日志分析和自动补全。学习路径建议从基础操作开始,逐步掌握分词器、组合查询和聚合分析。

2025-12-11 10:54:15 970

原创 HTTP的请求方式到底有多少种?

HTTP协议提供了多种请求方法,包括GET、POST、PUT、DELETE等核心方法,以及OPTIONS、PATCH等扩展方法。GET用于安全获取资源,POST用于创建资源,PUT完整更新,DELETE删除资源。不常用的HEAD只返回头信息,OPTIONS用于CORS预检请求,PATCH实现局部更新。此外还有WebDAV扩展的PROPFIND、MKCOL等方法用于文件管理。不同方法在安全性、幂等性和缓存特性上各有特点,开发者应根据RESTful规范合理选用,如Java和JavaScript示例所示,通过不同

2025-12-03 23:13:08 1189 2

原创 HTTP请求方法全面解析:从基础到面试实战

本文全面解析HTTP请求方法,从基础概念到实际应用。首先介绍HTTP请求方法在RESTful架构中的关键作用,详细讲解GET(安全、幂等、可缓存)和POST(不安全、非幂等)等核心方法的特性,包括请求结构示例和Java实现代码。特别对比了PUT与PATCH的更新操作差异,提供了电商下单等商业级实现案例。文章涵盖HTTP协议演进、方法特性比较和实战编码示例,适合开发人员系统学习HTTP请求方法的应用场景和实现技术。

2025-12-02 23:29:59 592 1

原创 DFA算法深度解析与技术实践

DFA(确定有限状态自动机)是一种高效的模式匹配算法,广泛应用于敏感词过滤等领域。本文详细解析了DFA的核心概念,包括五元组定义、状态转移图和工作流程。重点介绍了DFA在敏感词过滤中的应用,提供了完整的Java实现方案,包含敏感词检测、查找和替换功能。代码示例展示了如何构建DFA树结构,实现O(n)时间复杂度的多模式匹配,并包含性能测试结果。该算法具有匹配效率高、内存占用低等优势,特别适合大规模文本处理场景。

2025-11-30 22:01:56 1008 1

原创 Java分词器深度评测与实战指南

/ 添加用户词典// 动态添加词CustomDictionary.add("量子计算机");CustomDictionary.add("神经网络模型", "nz 1024");// 强制扫描(使新词立即生效)需求首选备选避免搜索索引Ansjjieba实体识别HanLPAnsjIK实时处理AnsjIKHanLP移动端jieba轻量版HanLP学术研究THULACHanLPIK。

2025-11-27 23:23:36 476 1

原创 雪花算法(Snowflake)技术详解与实战应用

雪花算法(Snowflake)是Twitter开源的分布式ID生成方案,通过64位结构(1位符号+41位时间戳+5位数据中心ID+5位工作节点ID+12位序列号)实现高性能、全局唯一的ID生成。核心优势包括时间有序性(支持排序)、每秒26万+的生成能力,以及通过工作节点配置实现分布式扩展。算法需处理时钟回拨问题,并提供Java实现示例。典型应用场景包括订单系统、用户注册和日志追踪,通过预生成ID缓冲池可进一步优化性能。工作节点ID可通过ZooKeeper动态分配,确保分布式环境下的唯一性。

2025-11-23 16:31:34 1045

原创 Redis 命令详解与实战案例

Redis是一个高性能的内存键值数据库,支持字符串、哈希、列表、集合和有序集合等多种数据结构。摘要介绍Redis核心命令及实战案例:字符串用于缓存和计数器(SET/GET/INCR);哈希存储对象(HSET/HGET);列表实现队列(LPUSH/RPOP);集合处理唯一值(SADD/SINTER);有序集合构建排行榜(ZADD/ZREVRANGE)。还包含事务、Lua脚本和发布订阅等高级功能,以及键命名规范、内存优化和批量操作等最佳实践。Redis凭借丰富的数据类型和原子操作,成为缓存、会话管理和实时系统的

2025-11-23 10:09:45 995

原创 IntelliJ IDEA 快捷键全解析与高效使用指南

本文系统梳理了IntelliJ IDEA的核心快捷键,分为基础编辑、代码补全、导航跳转、重构优化、调试运行、搜索替换和版本控制七大类,涵盖Windows/Mac双平台操作。重点介绍了撤销(Ctrl+Z)、跳转定义(Ctrl+B)、提取方法(Ctrl+Alt+M)、调试(Shift+F9)等高频快捷键的使用场景,并提供了冲突解决方案和自定义配置方法。通过掌握这些快捷键组合,开发者可显著提升编码效率,减少对鼠标的依赖,实现更流畅的开发体验。

2025-11-12 23:52:10 1622 1

原创 Java 枚举类(Enum)技术文档

Java枚举类技术摘要 Java枚举类(enum)是一种特殊的类,用于表示固定集合的常量,提供类型安全和结构化设计。枚举类隐式继承java.lang.Enum,不能继承其他类但可实现接口。基本用法包括定义枚举值、遍历(values()方法)、比较(==运算符)和获取序号(ordinal())。高级特性支持添加字段方法、重写方法、实现接口。典型应用场景包括状态表示、策略模式、单例模式和状态机实现。枚举实例是静态final的,天生线程安全且支持序列化。注意避免过度设计,适用于固定常量集合的场景。

2025-11-10 22:04:42 463

原创 Maven POM标签,这一篇就够了

本文系统介绍了Maven核心配置文件pom.xml的关键标签及其功能。主要内容包括:1)基础项目信息标签如modelVersion、groupId等;2)依赖管理标签dependencies和dependencyManagement;3)构建配置标签build和pluginManagement;4)模块化项目标签modules和parent;5)环境配置标签profiles;6)高级配置标签如distributionManagement和reporting。通过具体案例演示了各标签的配置方法,帮助开发者全面

2025-11-09 22:37:26 921

原创 Git 命令大全:从基础到高级操作

本文全面介绍了Git的核心命令,涵盖基础操作、分支管理、远程操作、撤销修改和高级功能。主要内容包括:仓库初始化(git init)、提交管理(git add/commit)、分支操作(branch/merge)、远程协作(push/pull)、撤销修改(restore/reset)以及高级技巧(rebase/cherry-pick)。同时提供了冲突解决、标签管理和子模块等实用功能,附有常用命令速查表。这些内容为开发者提供了完整的Git工作流指南,适用于日常开发和团队协作场景。

2025-11-09 20:57:29 948

原创 Windows系统不关闭防火墙,允许某个端口的访问怎么设置?

摘要:本文详细介绍了在 Windows 系统中开放特定端口而不关闭防火墙的方法。通过 Windows Defender 防火墙 的 入站规则 配置,可使用图形界面或命令行(netsh 或 PowerShell)添加端口规则。具体步骤包括选择协议(TCP/UDP)、指定端口号、设置允许连接,并验证规则生效。还提供了测试端口连通性(telnet、PowerShell)和常见问题解决方案,如规则未生效、第三方防火墙冲突等。最后以开放 3389 端口(远程桌面)为例说明操作流程,强调仅开放必要端口的安全原则。

2025-11-08 15:37:26 1152

原创 CentOS7安装Docker及配置代理

本文详细介绍了在CentOS 7系统上安装Docker并配置代理的完整步骤。主要内容包括:1) 系统更新和依赖安装;2) Docker CE的安装与验证;3) 系统级和Docker服务级代理配置方法;4) 代理测试与常见问题处理。同时提供了代理服务器类型说明和配置示例,帮助用户解决网络访问问题,确保Docker在代理环境下正常运行。全文包含具体命令和配置示例,适合需要配置代理的Docker用户参考。

2025-11-08 15:23:34 464

原创 为什么国内禁用docker呢?

国内对Docker的限制并非单一因素驱动,而是。

2025-11-08 15:01:37 2308 1

原创 Linux 常用命令详解与使用规则

本文详细介绍了Linux系统中20多个常用命令的使用方法,涵盖文件管理、系统监控、网络操作、权限控制等核心功能。每个命令均提供语法格式、常用选项、典型示例及注意事项,包括基础命令(ls/cd/pwd)、文件操作(cp/mv/rm)、系统管理(top/df/du)、网络工具(ping/ip)、权限管理(chmod/chown)以及查找工具(find/grep)等。特别强调了一些危险命令(如rm -rf)的使用规范和安全建议,并推荐了现代替代工具(如用ip替代ifconfig)。这些命令是Linux系统管理、开

2025-11-05 21:44:07 598

原创 Java Optional 类详解

Java 8引入的Optional是一个容器类,用于处理可能为null的对象,以减少空指针异常并提升代码可读性。它提供了创建实例(of()、ofNullable()、empty())、检查值存在(isPresent()、isEmpty())、获取值(get()、orElse()、orElseThrow())和转换值(map()、flatMap())等核心方法。Optional适用于方法返回值和链式调用,但不建议作为方法参数或字段类型。合理使用Optional能提升代码健壮性,但需避免过度使用。

2025-11-01 17:54:07 810

原创 Java Stream 流式编程

摘要: Java 8 的 Stream API 提供了一种声明式数据处理方式,通过链式操作(过滤、映射、排序等)简化集合操作,提升代码可读性。Stream 分为 中间操作(如 filter()、map())和 终端操作(如 collect()、forEach()),支持顺序或并行处理(parallelStream())。核心功能包括数据分组(groupingBy)、统计(summarizingInt)、归约(reduce)等,适用于集合、数组等数据源。注意:Stream 不存储数据且仅消费一次,并行流需注意

2025-10-31 22:52:26 608

原创 Java中 String为什么设计成不可变的?

Java的String类被设计为不可变对象,主要基于安全性、性能优化、线程安全和字符串常量池等考量。不可变性体现在String为final类、内部字符数组为final,任何修改操作都会返回新对象。这种设计确保了哈希缓存、线程安全共享和常量池优化,但也带来频繁修改时的性能问题,为此Java提供了StringBuilder和StringBuffer作为可变字符串方案。不可变特性使String成为安全可靠的编程基础,在密钥、网络连接等场景尤为重要,同时通过配套工具实现了灵活高效的字符串处理。

2025-10-30 21:59:40 345

原创 Java Stream Collectors主要 API 详解

Java 8 的 Collectors 工具类提供强大的流数据收集功能,包括转换为集合(toList/toSet)、映射(toMap)、字符串拼接(joining)、统计计算(summarizingInt/averagingInt)以及分组聚合(groupingBy/partitioningBy)。支持自定义集合类型、处理键冲突,并可结合collectingAndThen进行结果二次处理。通过示例展示了用户数据按性别/城市分组、年龄统计等典型用法,是Stream API数据转换的核心工具。

2025-10-30 21:52:15 632

原创 为什么要避免使用 `SELECT *`?

避免使用SELECT *查询数据库,因其存在性能、安全性和可维护性问题。它会不必要地增加网络传输、内存占用和CPU开销,无法利用覆盖索引优化查询,且可能暴露敏感字段。表结构变更时易导致兼容性问题,降低代码可读性。建议显式列出所需字段或使用视图封装,仅在调试等特殊场景谨慎使用SELECT *。明确指定字段可提升查询效率、系统稳定性和代码质量。

2025-10-28 22:52:48 561

原创 SQL中的JOIN该如何优化

数据库JOIN操作优化指南(145字) JOIN操作是数据库查询的核心,优化需多维度策略:1)优先使用INNER JOIN,避免LEFT JOIN导致数据膨胀;2)遵循"小表驱动大表"原则优化连接顺序;3)为JOIN列创建复合索引,包含WHERE和SELECT字段;4)通过执行计划分析避免临时表和文件排序;5)大数据量时采用分区表或分库分表;6)调整数据库参数如join_buffer_size。典型优化案例显示,合理索引+SQL重写可将5秒查询降至0.1秒,扫描行数减少99%。建议结合E

2025-10-28 22:47:43 978

原创 索引失效的问题如何排查?

索引失效问题排查指南摘要 索引失效是数据库性能优化的常见问题,本文提供了一套完整的排查方法和解决方案。主要内容包括: 诊断工具:使用EXPLAIN分析执行计划,查看索引使用统计 10大常见原因: 数据类型不匹配 索引列使用函数 前导通配符查询 OR条件不当使用 复合索引顺序错误 解决方案: 确保查询条件与索引类型一致 避免在索引列使用函数 合理设计复合索引顺序 使用UNION替代部分OR查询 高级技巧:优化器跟踪、索引有效性测试、碎片检查 最佳实践:遵循最左前缀原则,选择高基数列,利用覆盖索引 通过系统化的

2025-10-23 21:44:16 964

原创 慢SQL的问题如何排查?

慢SQL排查全流程指南,涵盖定位、分析与优化方案。通过开启慢查询日志、EXPLAIN分析执行计划,重点检查全表扫描、索引失效等问题。提供索引设计策略、SQL改写技巧(如分页优化)、系统参数调优建议。针对复杂场景给出分库分表、缓存等架构方案,并推荐各数据库的诊断工具链。最后形成"分析-优化-验证"闭环流程,解决90%慢SQL问题。关键要遵循先执行计划分析,再索引优化,最后架构调整的优化顺序,并建立持续监控机制。

2025-10-23 21:34:57 945

原创 Spring Security详解与使用案例

本文全面介绍了Spring Security框架的核心功能和技术细节。主要内容包括:1)框架概述,解释其认证、授权和攻击防护功能;2)核心组件和工作流程,如认证管理器和安全上下文;3)详细配置方法,包括Java配置和不同用户认证方式;4)授权控制策略,涵盖RBAC和方法级注解;5)常见安全防护措施;6)JWT和OAuth2集成方案;7)两个实际使用案例。文章为开发者提供了Spring Security从基础到高级应用的完整技术指南,适合需要实现系统安全控制的Java/Spring开发者参考。

2025-10-08 10:43:07 1041

Java面试分模块总结.md

总结了Java面试中经常问到的知识点,如: ### 设计模式 1、用到哪些设计模式?怎么用的 2、单例模式的不同写法 ### JDK 1、聊一下java的集合类 2、HashMap底层数据结构,以及解决hash碰撞的方法 3、Hashmap为什么要使用红黑树 4、集合类怎么解决高并发问题 5、队列的使用问题 6、自定义异常的应用场景 7、Object类中的方法 8、1.8的新特性 9、Java中的静态方法只有一个实例,如果想用多个实例怎么办? 10、Java面向对象的基本特征,继承、封装与多态 11、重写和重载是什么意思 12、怎样声明一个类不会被继承 13、HashMap中jdk1.7与jdk1.8的区别 14、concurrenthashMap 的底层实现原理,是如何实现线程安全的? 15、Java中的自增是线程安全的吗,如何实现线程安全的自增 。。。

2025-10-08

Java 常见 HTTP 客户端及使用示例

在 Java 开发中,HTTP 客户端是与 RESTful API 交互的核心工具。以下是 Java 中常见的 HTTP 客户端库及其使用示例,涵盖不同场景和需求。

2025-10-06

基于Cursor开发SpringBoot项目

完全基于Cursor开发的Springboot项目,可本地运行。 参考以下文档生成: https://blog.csdn.net/wangruchao_01/article/details/145547008

2025-07-28

空空如也

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

TA关注的人

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