自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java中string的intern方法

在 Java 中,String 类的 intern() 方法用于优化内存使用,它的主要作用是将字符串放入 字符串常量池(String Constant Pool) 中,或返回该池中已有的相同字符串引用。

2024-09-09 10:43:05 375

原创 Nginx安装

(2)直接通过ip地址(服务器ip)+端口号(默认80)3.便于管理,可以创建一个文件夹来保存(若不想的可以跳过步骤3,4)2.在Linux系统上进行下载(示例:下载1.25.1版本)注:如用方式(2)进行访问的话,记得要开放端口号。鼠标放在需要下载的版本上,右击鼠标“复制链接”出现“nginx-1.25.1”表示解压成功。示例如图片所示:(注:由于我已经下载完毕)#这是编译和安装一块进行(&&),也可以分开。4.解压包,并转换到nginx文件夹下。(1)通过命令行进行。#转换到nginx文件夹下。

2024-08-12 09:41:44 349

原创 linux安装jdk8详细步骤

发现有输入:rpm -qa | grep java 检测jdk的安装包,(注意:rpm命令符没有时记得下载一个输入:apt-get install +命令名称)最后再次:rpm -qa | grep java检查是否删除完即可(此步由于之前已经卸载,所以没有截图)接着进行一个个删除包,输入:rpm -e --nodeps +包名。3.使用xftp实现windows和linux文件传输。输入:java -version。上官网下载jdk压缩包。以上,整个安装过程结束。

2024-08-09 18:09:42 656

原创 Shiro--subject

在 Apache Shiro 中,Subject 是一个核心概念,它表示一个当前正在与应用程序交互的用户。这个用户可以是一个真实的人,也可以是一个系统账户或其他安全实体。Subject 是 Shiro 进行身份认证和权限检查的主要接口。

2024-07-25 09:37:41 513

原创 SpringSecurity--DelegatingFilterProxy工作流程

DelegatingFilterProxy 是 Spring 提供的一个特殊的过滤器,它起到了桥梁的作用,可以让你在 Spring 容器中管理 Servlet 容器中的过滤器。

2024-07-24 17:32:45 1529 1

原创 React--异步 action creator 和 action creator的区别

异步 action creator 和普通的 action creator 都是 Redux 中用于创建 actions 的函数,但它们有不同的目的和工作方式。以下是它们的主要区别:

2024-07-23 13:40:44 505

原创 React--Action Creators

在 Redux 中,Action Creators 是专门用于创建 actions 的函数。它们简化了生成 actions 的过程,使得代码更易读和可维护。

2024-07-23 13:15:35 567

原创 React--JavaScript 的模块导出和导入机制

JavaScript 的模块导出和导入机制,尤其是在使用 ES6 模块语法时。让我们详细解释这个过程,并解决你关于导出和导入的疑问。

2024-07-23 12:59:30 476

原创 React--Redux

Redux 是一个用于 JavaScript 应用的状态管理库,特别是在 React 应用中非常流行。下面我将详细介绍一个使用 Redux 的简单案例,包括设置 Redux 环境、创建 store、定义 actions 和 reducers,以及如何连接 React 组件。

2024-07-23 12:07:24 889

原创 React--react方法传自定义参数

在React中传递自定义参数到事件处理函数时,使用箭头函数 () => 方法() 的方式是为了确保事件处理函数在事件发生时才执行,而不是在组件渲染时就立即执行。具体原因如下:

2024-07-21 18:07:43 335

原创 设计模式--职责链模式

职责链模式(Chain of Responsibility Pattern)是一种行为设计模式,它允许多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合。将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止。

2024-07-21 09:55:12 546

原创 设计模式--策略模式

策略模式(Strategy Pattern)是一种行为型设计模式,它定义了一系列算法,将每一个算法封装起来,使得它们可以互换。策略模式让算法的变化独立于使用算法的客户程序,使得算法的选择和使用更加灵活和可扩展。

2024-07-21 09:50:00 833

原创 设计模式--模板方法

模板方法模式(Template Method Pattern)是一种行为型设计模式。它定义了一个算法的骨架,并允许子类在不改变算法结构的情况下重新定义算法的某些步骤。这种模式通过模板方法来控制算法的整体流程,而具体的步骤由子类实现。

2024-07-21 09:35:44 533

原创 设计模式--观察者模式

观察者模式(Observer Pattern)是一种行为型设计模式。它定义了对象之间的一种一对多依赖关系,使得当一个对象的状态发生变化时,所有依赖于它的对象都能得到通知并自动更新。这种模式常用于实现分布式事件处理系统。

2024-07-20 21:41:12 609

原创 Jackson 库简介--以及数据脱敏

Jackson 是一个流行的 Java JSON 处理库,它提供了将 Java 对象与 JSON 数据相互转换的功能。Jackson 的主要功能包括:

2024-07-20 21:35:01 880

原创 设计模式--享元模式

享元模式(Flyweight Pattern)是一种结构型设计模式,它通过共享大量细粒度的对象来减少内存消耗。这个模式的核心思想是把对象的状态分为内在状态和外在状态,其中内在状态是可以共享的,而外在状态是需要独立维护的

2024-07-18 19:37:32 1412

原创 设计模式--组合模式

组合模式是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。

2024-07-18 19:16:56 583

原创 设计模式--外观模式

外观模式(Facade Pattern)是一种结构型设计模式,它为子系统中的一组接口提供了一个一致的界面。外观模式定义了一个高层接口,使得子系统更加容易使用。它主要用于简化复杂系统的接口,提供一个简洁的接口给客户端使用,而隐藏系统的复杂性。

2024-07-18 09:44:48 773

原创 设计模式--适配器模式

适配器模式(adapter pattern )的原始定义是:将类的接口转换为客户期望的另一个接口,适配器可以让不兼容的两个类一起协同工作。

2024-07-17 20:34:17 789

原创 Redis--过期删除策略和数据淘汰策略

过期删除策略和数据淘汰策略

2024-07-16 20:01:06 990

原创 redis-缓存三剑客

redis-缓存三剑客

2024-07-16 19:29:57 1022 1

原创 Redis--布隆过滤器

解决缓存穿透是构建高效缓存系统中的关键问题之一。缓存穿透指的是恶意或者非法请求经过缓存层直接访问数据库或者后端服务,导致系统资源浪费和性能下降的情况。为了有效应对缓存穿透问题,以下是几种常见的解决方法:

2024-07-16 18:47:45 1251

原创 抽象工厂模式与工厂方法(简单工厂)的区别

在软件开发中,简单工厂模式和工厂方法模式是两种常用的创建型设计模式。尽管它们都用于创建对象,但它们的实现方式和应用场景有所不同。本文将详细探讨这两种模式的区别,帮助你更好地理解和应用它们。

2024-07-14 22:12:47 1712

原创 设计模式--抽象工厂模式

在软件开发中,当我们需要创建一组相关或互相依赖的对象时,简单工厂模式和工厂方法模式可能显得力不从心。此时,抽象工厂模式(Abstract Factory Pattern)就派上用场了。本文将深入探讨抽象工厂模式,帮助你理解和应用这一强大的设计模式。

2024-07-14 21:57:14 749 1

原创 设计模式--工厂设计模式

工厂模式是一种创建型设计模式,它定义了一个用于创建对象的接口,但由子类决定要实例化的类是哪一个。这样,工厂方法模式让类的实例化延迟到子类。通过工厂方法模式,我们可以在不修改现有代码的情况下引入新的产品类,从而实现更好的扩展性和可维护性。

2024-07-14 21:38:01 461

原创 设计模式--简单(抽象)工厂模式

简单工厂模式(Simple Factory Pattern)详解

2024-07-14 21:34:53 441

原创 设计模式--单例模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一,此模式保证某个类在运行期间,只有一个实例对外提供服务,而这个类被称为单例类。

2024-07-14 21:05:44 1322

原创 Mybatis-plus3.4.3下使用lambdaQuery报错

在 MyBatis-Plus 中,当使用 lambdaQuery().eq(CommonUser::getOpenId, openId).one() 进行查询时,如果未找到匹配的记录,不会抛出异常,而是会返回 null。

2024-07-14 16:59:38 292

原创 【无标题】

在开发基于Spring MVC的RESTful API时,有效地组织和设计端点是至关重要的。本文将介绍如何使用路径参数、请求参数对象和JSON请求体来实现灵活而清晰的API设计。

2024-07-14 15:18:06 839

原创 会话固定攻击

会话固定攻击(Session Fixation Attack)是一种网络攻击,攻击者试图诱骗受害者使用攻击者指定的会话ID,以便在受害者登录后,攻击者能够窃取受害者的会话并冒充受害者进行操作。下面是一个形象的例子来解释会话固定攻击:

2024-07-12 20:40:47 723

原创 设计模式--六大设计原则 (SOLID)

古人云: 有道无术,术可求.有术无道,止于术.而设计模式通常需要遵循一些设计原则,在设计原则的基础之上衍生出了各种各样的设计模式。设计原则是设计要求,设计模式是设计方案,使用设计模式的代码则是具体的实现。

2024-07-11 21:44:33 976

原创 设计模式--UML图

统一建模语言(Unified Modeling Language,UML)是用来设计软件的可视化建模语言。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。UML 从目标系统的不同角度出发,定义了用例图、类图、对象图、状态图、活动图、时序图、协作图、构件图、部署图等 9 种图。

2024-07-11 21:41:38 1049

原创 Async和Await

同步和异步的对比

2024-06-25 15:35:32 1138

原创 Vue的mvvm思想

Vue.js 是一个渐进式 JavaScript 框架,它的核心思想基于 MVVM 模式(Model-View-ViewModel)。MVVM 模式将用户界面(View)与业务逻辑(Model)分离,通过一个中间层(ViewModel)实现双向绑定,使得开发者可以更方便地管理复杂的 UI 状态和数据逻辑。

2024-06-25 14:00:04 888

原创 AI在创造还是毁掉音乐?

目前,国内外的AI音乐大模型如OpenAI的MuseNet和Google的Magenta项目,不仅在技术上有所突破,还探索了商业化路径,例如通过订阅服务或合作伙伴关系来推广其音乐生成能力。例如,AI可以根据用户输入的情感和风格生成特定风格的音乐,帮助音乐人在创作过程中快速实现想法,并且可以通过反馈机制不断改进和调整创作内容,实现人机共同创作的可能性。例如,AI可以根据用户提供的情感或风格要求,快速生成适合的音乐片段或完整作品,大大提高了音乐创作的效率和多样性。AI生成的音乐作品的版权归属问题也备受关注。

2024-06-22 14:04:35 586

原创 设计模式--装饰器模式

装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地将行为添加到对象中,而无需通过子类进行静态扩展。装饰器模式通过创建一个包装类,也就是装饰器,来包裹原始的类,并且可以在包裹过程中添加一些额外的功能。

2024-06-22 13:55:33 806

原创 设计模式--桥接模式

桥接模式通过将抽象和实现分离,使得它们可以独立地变化和扩展,从而提高了系统的灵活性和可维护性。在实际应用中,桥接模式常用于处理多维度变化的情况,如本例中的形状和颜色。

2024-06-22 13:43:40 1234

原创 代理模式--cglib动态代理

cglib (Code Generation Library ) 是一个第三方代码生成类库,运行时在内存中动态生成一个子类对象从而实现对目标对象功能的扩展。cglib 为没有实现接口的类提供代理,为JDK的动态代理提供了很好的补充。

2024-06-22 13:38:24 412

原创 Redis--延时双删策略

延时双删策略的核心目的是解决在高并发环境下可能出现的短暂不一致性问题。让我们来详细看一下在极端并发情况下,为什么需要延时双删。

2024-06-21 13:02:16 1021

原创 安装和使用 Yarn

安装和使用 Yarn

2024-06-20 18:48:45 231

空空如也

空空如也

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

TA关注的人

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