自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java SPI(Service Provider Interface)

在Java中,SPI(Service Provider Interface)是一种面向接口编程的机制,用于实现组件的动态扩展。SPI允许一种组件在不修改已有代码的情况下,提供对扩展的支持和透明的加载机制。运行时,SPI机制会自动加载并实例化com.example.SomeServiceImpl类,然后通过遍历ServiceLoader的方式调用对应的方法。

2024-01-29 05:19:53 449

原创 SQL子查询

在SQL中,子查询(Subquery)是指嵌套在另一个查询内部的查询语句。子查询可以作为主查询的一部分,用于检索额外的数据或作为过滤条件进行筛选。子查询可以包含在SELECT、FROM、WHERE和HAVING子句中。条件过滤:子查询可以用作WHERE或HAVING子句的条件,帮助我们根据其他查询的结果进行筛选和过滤数据。检索额外的数据:通过子查询,我们可以在主查询结果中检索到其他表中的相关数据,以满足更复杂的查询需求。排序和分组:子查询可以用于在主查询中进行排序和分组操作,以获取符合特定条件的结果集。

2024-01-29 05:10:53 568

原创 ELK的日志解决方案

ELK是指Elasticsearch、Logstash和Kibana的组合。这是一套完整的日志解决方案,可以帮助我们收集、存储、搜索和分析大量的日志数据。Elasticsearch:是一个分布式的搜索和分析引擎,用于存储和索引各种类型的数据。它使用倒排索引技术快速地进行搜索和分析。Logstash:是一个用于日志收集、处理和导出的工具。它可以从各种来源(如文件、数据库、网络等)收集日志数据,并对其进行过滤、解析和转换,最后输出到Elasticsearch。

2023-12-06 20:07:25 475 1

原创 线程池及其7大参数与4大拒绝策略详解

线程池是一个线程调度器,它通过维护一个线程队列来管理线程的调度。在Java中,线程池的实现是通过java.util.concurrent.ExecutorService接口来完成的。常用的线程池实现类有ThreadPoolExecutor和ScheduledThreadPoolExecutor。

2023-12-05 20:17:24 426

原创 Java开发的三种定时任务

在Java开发中,我们经常需要按照一定的时间间隔或特定规则来执行某些任务。为了实现这样的定时执行,Java提供了多种方式来处理定时任务。本文将介绍Java开发中常用的三种定时任务方法,分别是Timer、ScheduledExecutor和Quartz。

2023-12-04 20:32:20 410

原创 Java中的锁和分布式锁

在多线程编程和分布式系统中,锁是一种关键的概念和机制,用于确保资源的安全访问和协调并发操作。Java提供了内置的锁机制,也可以使用分布式锁来处理分布式环境中的并发问题。本文将详细介绍Java中的锁和分布式锁。

2023-11-30 20:31:40 543

原创 过滤器、拦截器和AOP之间的差异

在软件开发中,过滤器、拦截器和AOP(面向切面编程)都是常见的概念和设计模式,用于对请求进行处理和控制。虽然它们都有类似的功能,但它们在实现方式和应用场景上存在一些差异。本文将详细介绍过滤器、拦截器和AOP之间的差异。

2023-11-29 20:36:52 419 1

原创 代理的三种方式:静态代理、动态代理和CGLIB代理

代理是面向对象编程中常用的一种设计模式,它允许一个对象充当另一个对象的接口,以控制对该对象的访问。在Java中,代理可以以多种方式实现,其中最常见的是静态代理、动态代理和CGLIB代理。本文将详细介绍这三种代理方式的原理和应用。

2023-11-28 20:44:47 679

原创 Spring MVC工作流程解析

Spring MVC是一个基于Spring框架的MVC(Model-View-Controller)设计模式的Web应用开发框架。它通过将请求、响应和业务逻辑分离,帮助我们构建灵活可维护的Web应用程序。本文将深入解析Spring MVC的工作流程,让我们一起来了解它是如何处理HTTP请求的。

2023-11-27 20:37:40 622

原创 RPC与HTTP的区别

RPC通常基于接口定义语言(IDL),通过IDL描述服务接口,客户端和服务器端都使用该IDL生成相应的代码,从而实现接口定义的一致性。HTTP使用统一资源标识符(URI)来标识资源和描述操作。客户端通过HTTP方法(如GET、POST、PUT、DELETE)和URI来发起请求,服务器通过HTTP状态码和响应消息返回结果。

2023-11-25 18:02:15 626

原创 设计模式:Build 模式

在软件开发中,设计模式是解决常见问题的重复性解决方案。其中,Build 模式是一种创建复杂对象的设计模式,它将对象的构建和表示分离,使得同样的构建过程可以创建不同的表示。本文将介绍 Build 模式的概念、应用场景和实例。

2023-11-23 20:38:17 828 1

空空如也

空空如也

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

TA关注的人

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