您的当前位置:TAGS -> Java
  • Java中Lambda表达式和函数式接口的使用和特性

    后端开发2025年08月20日

    目录 1.概述 2.lambda表达式的基础 3.JAVA中的lambda表达式 4.函数式接口 概述 Function Predicate Consumer Suppiler 5.级联与柯里化 1.概述 当Java 8发布时,其中最令人兴奋的特性之一就是 Lambda 表达式。Lambda 表达式是一种轻量级、简洁和高效的函数式编程方法。它可以用来代替 ...

  • 详解Java如何实现防止恶意注册

    后端开发2025年08月20日

    目录 1、添加验证码 2、IP 限制 3、添加滑动验证 4、添加邮箱验证 5、添加黑名单 恶意注册通常是指使用自动化脚本或者机器人在短时间内进行大量的注册行为,这种行为会对系统造成压力,甚至会导致系统瘫痪。为了解决这个问题,可以采取以下措施: 1、添加验证码 为了避免机器人或自动化脚本进行注册行为,可以在注册页面添加验证码。这样只有人类用户才能通过验证码验...

  • Java数据结构之HashMap源码深入分析

    后端开发2025年08月20日

    目录 基本结构 get方法 put方法 HashMap的容量为什么总是2的n次幂 HashMap是Java集合框架中常用的一种数据结构,它是一种基于哈希表实现的映射表.在JDK1.8版本中,HashMap的get方法和put方法的实现与之前版本有些不同,下面我们来逐步分析其源码实现. 基本结构 public class HashMap<K,V...

  • Java Scala的隐式转换详解

    后端开发2025年08月20日

    目录 一、隐式值与隐式参数 二、隐式转换函数 三、隐式类 隐式转换是在Scala编译器进行类型匹配时,如果找不到合适的类型,那么隐式转换会让编译器在作用范围内自动推导出来合适的类型。 一、隐式值与隐式参数 隐式值是指在定义参数时前面加上implicit。隐式参数是指在定义方法时,方法中的部分参数是由implicit修饰【必须使用柯里化的方式,将隐式参数写在...

  • Java Spring处理循环依赖详解

    后端开发2025年08月20日

    目录 01-前言:什么是循环依赖? 02-Spring 如何处理循环依赖? 03-Spring 中解决循环依赖的三级缓存 01-前言:什么是循环依赖? 首先,我们先明确下依赖的定义。 如果一个 Bean bar 的属性,引用了容器中的另外一个 Bean foo,那么称 foo 为 bar 的依赖,或称 bar 依赖 foo。 如果用代码表示,可以表示为: ...

  • java中JsonObject与JsonArray转换方法实例

    后端开发2025年08月19日

    目录 备忘一下,首先 JsonArray转换为JsonObject JsonArrayStr 转换为 JsonObjectStr 补充:java中JSONObject和JSONArray解析 总结 备忘一下,首先 这是一个JsonArrayStr,他可以转换为JsonArray。 [{"name":"a1"},{"name":"a2"}] 这是一个Json...

  • Java中Lombok常用注解分享

    后端开发2025年08月19日

    目录 Our-task介绍 安装Lombok 加入Maven依赖 IDEA中安装Lombok插件 注解介绍 @Getter和@Setter @ToString @EqualsAndHashCode @NoArgsConstructor @AllArgsConstructor @RequiredArgsConstructor @Data @Value @Bu...

  • Java实现导出合并Excel单元格

    后端开发2025年08月19日

    目录 一、准备工作 二、实现步骤 三、完整代码 四、总结 随着数据的不断增长,很多时候需要将数据导出到Excel中进行分析、处理和展示。而Java作为一种流行的编程语言,自然也提供了很多实现Excel导出的方法。本文将介绍如何使用Java实现Excel导出,并且可以合并单元格。 一、准备工作 在开始实现Excel导出之前,我们需要准备以下工具和环境: 1....

  • Java判断变量是否为空问题的方法总结

    后端开发2025年08月19日

    目录 前言 StringUtil.isEmpty() "".equals() 同时判断多个字符串是否为空 两种判断,哪种性能更好? 两种判断,哪种可读性和易于维护性都好 总结 前言 Java的StringUtil.isEmpty(str)和"".equals(str)都是用来判断字符串是否为空的方法,但它们有一些不同...

  • 详解Java如何在CompletableFuture中实现日志记录

    后端开发2025年08月18日

    平时写项目的时候,java之父叫我们多打日志,我们通常使用traceId和requestId来保存完整请求的链路日志,例如市面上的skywalking、zipkin等都能实现此功能。 下面介绍一种slf4j自带的MDC类,来记录完整的请求日志,和在CompletableFuture异步线程中如何保留链路id 1.首先利用aop为所有请求入口添加reques...