自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python里面函数和方法的区别(类比java里面的方法来讲解)

好的!下面我会结合 Python的方法与函数 的对比,并类比 Java的静态方法和实例方法,详细讲解它们的区别和联系,帮助理解两种语言的异同。总得来说就是在类里面的属于方法,因为他需要依存于类。但是函数就不一样了。在java里面没有函数一说。因为所有的都在类里面也都是方法了。在Java里面方法分为静态方法和实例方法。静态方法可以直接通过函数名来直接调用,不需要创造类。实例方法需要创造出实例才能调用类里面的方法。如果交给IOC容器管理,在默认情况下是一个创造一个实例类的。2. 方法(Method)

2025-05-15 00:32:50 396

原创 Python函数的详细讲解

使用defdef 函数名(参数列表) : """文档字符串(可选)""" 代码块 return 返回值提高代码复用性模块化编程支持多种参数传递方式支持高阶函数和函数式编程通过装饰器灵活扩展功能通过合理使用函数,可以让代码更简洁、更易维护。

2025-05-14 23:51:53 89

原创 在Python里面循环语句的讲解

for循环:适合已知迭代次数或遍历容器。while循环:适合不确定次数的条件循环。灵活使用breakcontinueelse控制流程。掌握推导式、生成器、zip()等高级工具提升效率。通过合理选择循环结构,可以高效处理重复性任务,是Python编程的核心技能之一!

2025-05-14 18:19:17 450

原创 Python里面if语句的讲解

if语句通过条件表达式控制代码执行路径。合理使用elif和else处理多分支逻辑。注意Python的缩进规则和真值测试特性。复杂条件建议拆分为多个变量或使用括号明确优先级。通过掌握这些内容,你可以高效编写基于条件的Python程序逻辑。

2025-05-14 16:40:51 427

原创 Python的(常量池在java里面的叫法)

实现了类似 Java 常量池的内存优化,但机制更简单且范围有限。这些优化是解释器为了提升性能而设计的隐式策略,并非严格的“常量池”结构。开发者应理解这些行为以避免依赖对象标识(在 Python 中,不可变数据类型(如整数、字符串、元组)的某些优化机制确实与 Java 的“常量池”有相似之处,但它们的实现方式和触发条件存在显著差异。Python 对小整数进行了全局缓存,Python 的不可变数据类型通过。)进行逻辑判断,始终使用值比较()以确保代码的健壮性。

2025-05-14 16:28:06 501

原创 Python里面字符串的拼接方法讲解

方法适用场景性能可读性运算符少量、简单拼接低高str.join()大量字符串拼接高中f-string格式化字符串(Python 3.6+)高高复杂格式或旧版本兼容中中操作符旧代码维护低低自动拼接字面值代码中的长字符串拆分高高根据实际需求选择最合适的方法,确保代码高效且易维护。

2025-05-13 21:47:27 250

原创 Python的数据结构详细讲解

类型系统Python 动态类型,所有值均为对象;Java 静态类型,区分基本类型和对象类型。内存与性能Java 的基本类型(如int)直接在栈上分配,效率更高;Python 的所有类型均为堆分配对象。扩展性Python 的容器可混合存储不同类型,Java 容器需指定泛型类型(如不可变性Python 通过内置类型(如tuple)直接支持不可变,Java 需依赖 API 或第三方库。

2025-05-13 17:15:07 423

原创 可变类型,不可变类型的设计和常量池存在原因

通过合理选择可变与不可变类型,并利用常量池优化,可以写出更安全、高效的 Java 代码!的存在,都是为了解决特定的编程问题和优化性能。

2025-05-13 10:04:00 369

原创 基本数据类型和包装类(以int类型为例子讲解)

掌握这些机制,可以避免常见的坑(如包装类比较错误),并写出更高效的代码!在赋值行为和内存管理上有本质区别。

2025-05-13 10:01:29 304

原创 java里面的可变类和不可变类

/ Date 是可变对象!// 防御性拷贝:防止外部修改影响内部状态// 返回拷贝,避免内部数据被修改特性不可变类型(如String可变类型(如内容修改创建新对象,原对象不变直接修改原对象线程安全天然安全需手动同步(如内存优化常量池、缓存机制无特殊优化适用场景多线程、哈希键、配置类单线程高频修改、动态集合操作掌握可变与不可变类型的区别,能帮助你写出更高效、健壮的代码。优先使用不可变对象:除非有明确的修改需求。避免共享可变对象:防止多线程竞争或意外修改。

2025-05-13 09:57:51 781

原创 PyCharm软件下载和配置Python解释器

通过以上步骤,您已成功配置PyCharm和Python解释器,可以开始编写和运行Python代码!

2025-05-11 18:18:07 813

原创 MongDB数据库在Spring Boot项目里面的简单使用

通过以上步骤,即可在 Spring Boot 项目中集成 MongoDB 并实现基本的 CRUD 操作!如果需要更复杂的查询,可以参考 Spring Data MongoDB 的。以下是在 Spring Boot 项目中集成 MongoDB 的详细步骤,包含。注解或聚合管道(Aggregation Pipeline)。配置、实体定义、Repository 和示例代码。使用 Spring Initializr(定义数据访问层接口,继承。

2025-05-10 09:16:47 1231

原创 MongDB和MySQL的区别

通过对比,可以更清晰地根据业务需求选择合适的数据库。如果需要进一步探讨具体场景,可以继续交流!,它们在设计理念、数据模型、查询语言、扩展性等方面有显著差异。

2025-05-10 09:10:46 970

原创 MongDB 数据库简单介绍

通过以上内容,你可以快速上手 MongoDB 的基本操作!如果需要进一步学习,建议参考官方文档:https://docs.mongodb.com/,以高性能、高扩展性和灵活的数据模型著称。(类似 JSON 格式的 BSON),适合处理。MongoDB 是一个开源的。

2025-05-10 09:07:20 641

原创 FreeMarke 生成静态模板(存储到MinIo里面)

MinIO是一个高性能的开源对象存储服务,兼容 Amazon S3 API,适用于存储非结构化数据(如图片、视频、日志、静态文件等)。它具备高可用性、分布式部署能力,适合作为云原生应用的存储基础设施。使用 MinIO 存储静态文件(CSS、JS、图片等)。通过工具类便捷管理文件上传。在 Freemarker 模板中直接引用 MinIO 文件地址。前端通过公开 URL 或代理访问静态资源。

2025-05-09 12:41:46 292

原创 FreeMarker 生成静态文件(写在磁盘当中)

/ 示例实体类@Data // Lombok 注解模板设计:编写.ftl模板文件,定义动态占位符和逻辑。数据准备:构建与模板匹配的数据模型(Map 或 Java 对象)。渲染写入:调用 FreeMarker 渲染模板,将结果写入物理文件。访问管理:通过 HTTP 直接访问静态文件或集成到 CDN。此方案适用于需要预生成静态内容以提高性能的场景(如 SEO 优化、高并发页面)。

2025-05-09 10:28:13 658

原创 FreeMarker静态模版基础语法

通过上述步骤,你可以在 Spring Boot 中快速集成 FreeMarker,利用其强大的模板功能实现动态页面渲染。重点掌握集合遍历、条件判断和空值处理,能有效提升开发效率。

2025-05-08 22:36:18 523

原创 Apifox插件推荐(可以进行API接口调试,文档管理,Mock服务)

在 IntelliJ IDEA 中使用可以方便地进行 API 接口调试、文档管理和 Mock 服务。

2025-05-08 18:12:19 732

原创 Redis 集群结构

以下是更详细的逐步指南,涵盖从零开始搭建Redis集群到Spring Boot集成的完整流程,

2025-05-04 23:07:58 315

原创 Redis哨兵(主从架构 + Sentinel)

是用于的配置,而主从架构 + Sentinel 需要使用。

2025-05-04 21:55:51 1010

原创 Redis主从架构

SAVE可以查看这个链接去配置。

2025-05-04 17:59:01 539

原创 Redis主从架构配置 读写分离

BeanReadFrom.REPLICA_PREFERRED // 可替换为自定义策略。

2025-05-04 17:56:25 542

原创 Redis的持久化

根据业务需求合理选择持久化策略,并配合监控、备份和测试恢复流程,才能最大限度保障数据安全。Redis的持久化机制是确保数据安全的关键功能,主要包括。:同时启用RDB和AOF,兼顾快速恢复与数据安全。以下是详细的实现方法及配置推荐,:记录每个写操作命令,以追加日志(:定期将内存数据生成二进制快照(

2025-05-04 16:17:05 626

原创 解决超卖问题

在电商、秒杀等高并发场景中,是一个经典的技术挑战。以下是基于 Spring Boot 项目的,结合多种技术手段实现高并发下的库存安全。

2025-05-02 20:25:41 810

原创 解决缓存击穿问题

也就是说在查询的时候没有在Redis里面找到那么需要在数据库里面进行一个查询然后添加到Redis里面,但是如果一个相同的一个信息进行查询那么会增加压力,那么需要给到一个互斥锁然后进行一个上锁减缓一下压力。核心思想:缓存不设物理过期时间,但在数据中存储逻辑过期时间,由后台任务或访问时异步更新。核心思想:系统启动或数据变更时,主动加载热点数据到缓存。

2025-05-02 18:00:00 953

原创 Redis 解决缓存穿透

只能判断这个实体类是否存在,不能判断里面的属性值是否为null。通过上述方案,可以在 Spring Boot 项目中有效解决缓存穿透问题,保障系统的高可用性和性能。容易犯错的地方是这个判断,在得到的shop实体类的时候不能确保里面的全部属性值都不为null,在 Spring Boot 项目中结合 Redis 解决缓存穿透问题(我。在应用启动时,加载所有合法数据标识(如商品 ID)到布隆过滤器。在查询数据前,先通过布隆过滤器校验请求的合法性。若系统为分布式架构,可使用 Redis 的。

2025-05-01 23:37:05 1056 1

原创 RedisTemplate的序列化配置方式详解

配置/方法特点适用场景默认JDK序列化二进制存储,兼容Java对象纯Java应用,无需人工查看数据Key/Value均String纯文本存储,兼容性强简单键值对,跨语言场景Key为String,Value为JSON可读性好,支持复杂对象存储DTO对象,需人工查看或跨语言读取Hash结构定制序列化灵活配置Hash的Field和Value序列化嵌套数据结构,如用户属性高性能二进制序列化手动控制序列化,性能最优高性能场景,如缓存大量数据数据结构操作方法。

2025-05-01 11:16:42 849

原创 使用 Spring Data Redis 实现 Redis 数据存储详解

Spring Data Redis 是 Spring 生态中操作 Redis 的核心模块,它封装了 Redis 客户端的底层细节(如 Jedis 或 Lettuce),提供了统一的 API 来操作 Redis 的数据结构。确保所有操作的 Key/Value 序列化方式一致,避免出现乱码或类型错误。或手动关闭连接,避免未释放的连接耗尽资源。在 Redis 配置中设置。

2025-05-01 00:03:26 1553

原创 Redis数据结构介绍

场景推荐数据结构简单键值存储String对象存储(多字段)Hash队列/栈List无序去重集合Set有序排行榜Sorted Set二值状态统计Bitmaps近似去重统计地理位置GEO消息队列(高级需求)Stream通过合理选择数据结构,可以显著提升 Redis 的性能和内存利用率。如果需要更深入某个结构的实现原理(如跳跃表、压缩列表),或实际应用案例,可以进一步探讨!

2025-04-30 08:24:17 1038

原创 Redis的简单介绍

Redis(motectionaryerver)是一个开源的、基于内存的,常被用作数据库、缓存和消息中间件。

2025-04-30 07:59:17 803

原创 自定义 Starter(spring boot starter)

通过自定义 Starter,你可以将一组功能封装为可复用的组件,其他项目只需添加依赖即可自动配置 Bean。),可以让其他项目通过依赖引入你的 Starter 来自动配置 Bean 和相关组件。发布到 Nexus 或 Maven Central。在 Spring Boot 中自定义一个。就能轻松集成你的功能!

2025-04-25 14:17:03 317

原创 Spring boot 自动配置

Spring Boot 的自动配置通过条件化加载机制和默认配置,极大简化了开发流程。理解其原理和条件注解的用法,可以帮助开发者更高效地使用和定制 Spring Boot。

2025-04-25 14:11:58 443

原创 IOC容器类比理解

它的核心目标就是帮你管理所有 Bean 的“家务事”,让你能更专注于业务逻辑的开发(即“自己的事业”)。下面通过一个具体的场景和对比,详细解释这个比喻的合理性及其优势。通过这个“管家”,你可以更高效、更优雅地构建应用程序,而无需被技术细节绊住脚步。这正是 Spring Boot 设计的核心理念——

2025-04-25 00:44:12 562

原创 Bean存在的意义和IOC容器管理

通过 IOC 容器管理 Bean,你不仅能更高效地开发,还能让代码更健壮、更易于维护和扩展。的区别,逐步解释 Bean 存在的意义,以及 Spring IOC 容器的核心优势。

2025-04-25 00:38:32 748

原创 Spring boot 中的IOC容器对Bean的管理

Spring Boot 中 IOC 容器对 Bean 的管理,涵盖从容器启动到 Bean 的生命周期管理的全流程。掌握这些步骤后,可以高效利用 Spring Boot 的 IOC 容器管理 Bean,构建松耦合、可维护的应用。容器负责将依赖的 Bean 注入到需要它们的对象中。通过注解或接口控制 Bean 的初始化和销毁逻辑。Spring Boot 的 IOC 容器基于。通过条件注解控制 Bean 的注册。注解指定 Bean 的作用域。,在应用启动时自动初始化。注解标记主类,启动容器。

2025-04-25 00:16:02 1729 1

原创 ThreadLocal线程本地量

后续业务代码(如 Controller、Service、DAO)可直接从。为了避免内存泄漏(尤其是使用线程池时),必须在请求处理完成后清理。通过这种方式,你可以安全地将用户登录信息存储在。在用户登录成功后,将用户信息存入。(但需谨慎,线程池中可能不适用)。中,并在整个请求链路中共享数据。如果业务代码中使用异步线程(如。),子线程无法直接继承父线程的。以下是实现将登录信息存储在。中获取用户信息,无需传参。:手动传递用户信息或使用。

2025-04-24 18:07:37 338

原创 Spring AOP 的讲解

技术,将横切关注点(如日志、事务、权限校验)与核心业务逻辑分离,提升代码的模块化和可维护性。在 Maven 项目中,需添加以下依赖(Spring Boot 项目推荐使用。掌握 Spring AOP 是构建高可维护性企业级应用的关键!是 Spring 框架的核心模块之一,旨在通过。Spring AOP 通过。

2025-04-23 23:49:28 771

原创 注解的讲解

/ 注解参数// 属性,可设置默认值五、注解的处理注解需要通过反射或编译时处理工具(APT)来解析。

2025-04-23 17:36:06 507

原创 过滤器和拦截器

在 Spring Boot 项目中,过滤器和拦截器是两种常用的请求处理机制,它们都可以实现对请求的预处理和后处理,但在使用场景和实现原理上有明显区别。以下是详细说明(

2025-04-22 22:57:26 407

原创 JWT令牌登录校验

以下是基于JWT的登录校验模块化实现方案,分为四大核心模块,代码结构清晰且职责分明。

2025-04-22 16:15:49 567

空空如也

空空如也

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

TA关注的人

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