大家好,我是不才陈某~在SpringBoot项目直接使用okhttp、httpClient或者RestTemplate发起HTTP请求,既繁琐又不方便统一管理。因此,在这里推荐一个适用于SpringBoot项目的轻量级HTTP客户端框架retrofit-spring-boot-starter,使用非常简单方便,同时又提供诸多功能增强。适用于retrofit的
......
193
0
0
2024-01-21
大家好,我是不才陈某~知识星球中的球友问了一个关于websocket的问题,大致如下:简单的概括一下:如果我们的项目是分布式环境,登录的用户被Nginx的反向代理分配到多个不同服务器,那么在其中一个服务器建立了WebSocket连接的用户如何给在另外一个服务器上建立了WebSocket连接的用户发送消息呢?今天就来解答一下球友的问题:其实,要解决这个问题就需
......
252
0
0
2024-01-21
前言网上一搜 ” java 爬虫框架有哪些”,一般就会出现以下这几款: Apache Nutch 、 WebMagic 、 WebCollector 、 Heritrix3 、 Selenium 这些框架有哪些优缺点?– Nutch支持分布式抓取,并有 Hadoop 支持,可以进行多机分布抓取,存储和索引。另外很吸引人的一点在于,它提供了一种插件框架
......
212
0
0
2024-01-21
提到多线程,当然要熟悉java提供的各种多线程相关的并发包了,而java.util.concurrent就是最最经常会使用到的,那么关于concurrent的面试题目有哪些呢?一起来看看吧。问题1:什么是ConcurrentHashMap?它与HashMap的区别是什么?回答: ConcurrentHashMap是java.util.concurrent包中
......
219
0
0
2024-01-21
源自尚硅谷的学习笔记IoC 是 Inversion of Control 的简写,译为“控制反转”,它不是一门技术,而是一种设计思想,是一个重要的面向对象编程法则,能够指导我们如何设计出松耦合、更优良的程序。Spring 通过 IoC 容器来管理所有 Java 对象的实例化和初始化,控制对象与对象之间的依赖关系。我们将由 IoC 容器管理的 Java 对象称
......
220
0
0
2024-01-18
背景面试官: 项目中用到过SLF4J吗?了不起: 用过,会在相关类上加上@Slf4j注解面试官: 他底层是如何打日志的呢?了不起: 运用到了Java的SPI技术相关概念Java SPI(Service Provider Interface)是一种服务发现机制,它允许第三方为现有的Java库提供实现。SPI的主要目的是为了解耦,使得接口和实现可以独立地进行开发
......
304
0
0
2024-01-18
背景面试官: 项目中用到了分布式锁了吗?了不起: 用到了,用的是redis实现面试官: 介绍下分布式锁用的场景已经原理什么是分布式锁分布式锁就是在分布式系统中,为解决共享资源排他性式访问而设定的锁。用于解决分布式系统中操作共享资源数据一致性问题。应用场景分布式锁的应用场景还是很多的。比如“秒杀”活动,大家到了某个时间点去抢“小米”手机(然后失败了)。或者某个
......
201
0
0
2024-01-18
在日常开发中,当需要给一个现有类添加附加职责,而又不能采用生成子类的方法进行扩充时。例如,该类被隐藏或者该类是终极类或者采用继承方式会产生大量的子类。这时候,我们该怎么办呢?我们可以使用装饰器器模式来解决这个问题,本文将从以下四个方面讲解装饰器器模式。简介优缺点应用场景Java 代码示例、Spring 代码示例简介装饰器模式(Decorator Patter
......
198
0
0
2024-01-17
软件开发原则原则介绍单一职责原则一个类或模块应该只负责一项任务或功能开闭原则软件实体(类、模块、函数等)应该对扩展开放,对修改关闭里氏替换原则子类应该能够替换其父类并且不会破坏程序的正确性接口隔离原则客户端不应该强制依赖它不需要的接口,即应该将接口拆分成更小的部分依赖倒置原则高层模块不应该依赖于底层模块,它们都应该依赖于抽象接口迪米特法则一个类应该对自己需要
......
302
0
0
2024-01-16
maven-mvnd基本介绍当我们使用 Maven 构建项目时,通常需要启动 Maven 进行编译、测试和打包等操作,而 Maven 传统的构建太慢了,所以 Maven 新起了一个 maven-mvnd 项目,它的宗旨就是,借鉴来自 Gradle 和 Takari 中的技术以提供更快的 Maven 构建速度。需要注意的是, maven-mvnd 并不能有独立
......
291
0
0
2024-01-16
Spring Boot 提供了丰富的测试功能,主要由以下两个模块组成:spring-boot-test:提供测试核心功能。spring-boot-test-autoconfigure:提供对测试的自动配置。Spring Boot 提供了一个 spring-boot-starter-test一站式启动器,如以下依赖配置所示。<dependency>
......
203
0
0
2024-01-16
作者:小傅哥 博客:https://bugstack.cn❝沉淀、分享、成长,让自己和他人都能有所收获!😜 ❞本文的宗旨在于通过简单干净实践的方式,向读者介绍 Zookeeper 的安装配置,学习 SpringBoot 整合使用,以及基于 Zookeeper 开发一个简单的配置中心功能内核。通过这样的实践方式,让读者入门和掌握 Zookeeper 以应对后续
......
209
0
0
2024-01-15
当涉及到 Java 性能分析时,有一系列强大的命令和工具可以帮助开发人员分析应用程序的性能瓶颈、内存使用情况和线程问题。以下是一些常用的 Java 性能分析命令和工具,以及它们的详细说明和示例。以下是一些常用的性能分析命令和工具汇总:用于查看正在运行的 Java 进程的状态信息。
1、jpsjps (JVM Process Status Tool)命令用于
......
244
0
0
2024-01-14
一、Java基础1. JDK 和 JRE 有什么区别?JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的 开发环境 和运行环境。 JRE:Java Runtime Environment 的简称,java 运行环境,为 java 的运行提供了所需环境。 具体来说 JDK 其实包含了 JRE,同时还包含了编译
......
221
0
0
2024-01-14
Java 反序列化是java安全的基础,想要学好java反序列化,就不能只看看相关文章,要自己动手实践,看看java反序列化到底是怎么回事。今天小华跟大家分享“java序列化和反序列化的那些事”。 首先,我们先了解下,什么是java序列化? Java Serialization(序列化):将java对象以一连串的字节保存在磁盘文件中的过程,也可以
......
200
0
0
2024-01-14