StringBuilder 线程不安全,到底哪里不安全?

StringBuilder 线程不安全,到底哪里不安全?在Java中,字符串拼接是一个非常常见的操作,而对于频繁变动的字符串内容,使用StringBuilder是一个性能优化的选择。但是,StringBuilder在...

2024-01-24

这应该是java最好用的orm之一了

这应该是java最好用的orm之一了说起orm大家肯定都不会陌生,作者是一个.net菜鸟。并且是在.net繁荣的orm圈子下成长的,所以这次给大家带来的是媲美efcore,freesql,sqlsugar的...

2024-01-24

Spring Boot 整合 Camunda 实现工作流

工作流是我们开发企业应用几乎必备的一项功能,工作流引擎发展至今已经有非常多的产品。最近正好在接触Camunda,所以来做个简单的入门整合介绍。如果您也刚好在调研或者刚开始...

2024-01-24

HanLP — HMM隐马尔可夫模型 -- 维特比(Viterbi)算法 --示例代码 - Java

Viterbi 维特比算法解决的是篱笆型的图的最短路径问题,图的节点按列组织,每列的节点数量可以不一样,每一列的节点只能和相邻列的节点相连,不能跨列相连,节点之间有着不同的距离,距...

2024-01-24

白话文解析LiteFlow的理念是什么?什么时候用该怎么用?干货满满

官网:https://liteflow.cc/Gitee:https://gitee.com/dromara/liteFlowGithub:https://github.com/dromara/liteflowLiteFlow一个现代化的开源规则引擎框架,以下文中简称LF。前...

2024-01-24

让我看看怎么个事儿之SpringBoot自动配置

学习 SpringBoot 自动配置之前我们需要一些前置知识点:Java注解,看完就会用学会@ConfigurationProperties月薪过三千不是银趴~是@Import!@Conditional+@Configuration有没有搞...

2024-01-24

Java异步编程详解

在现代应用程序开发中,异步编程变得越来越重要,特别是在处理I/O密集型任务时。Java提供了一套强大的异步编程工具,使得开发者能够更有效地处理并发任务。本篇博文将深入探讨Jav...

2024-01-24

Servlet系列:两种创建方式(xml,注解)

一、使用web.xml的方式配置(Servlet2.5之前使用)在早期版本的Java EE中,可以使用XML配置文件来定义Servlet。在web.xml文件中,可以定义Servlet的名称、类名、初始化参数等。然后...

2024-01-24

【Java 进阶篇】使用 Stream 流和 Lambda 组装复杂父子树形结构(List 集合形式)

前言在最近的开发中,一星期内遇到了两个类似的需求:返回组装好的部门树、返回组装好的地区信息树,最终都需要返回 List 集合对象给前端。于是在经过需求分析和探索实践后,我对于...

2024-01-24

揭秘Spring事务失效场景分析与解决方案

在Spring框架中,事务管理是一个核心功能,然而有时候会遇到事务失效的情况,这可能导致数据一致性问题。本文将深入探讨一些Spring事务失效的常见场景,并提供详细的例子以及解决方...

2024-01-24

JVM学习-程序编译与优化

原文链接:https://gaoyubo.cn/blogs/89d6d9be.html一、前端编译与优化Java技术下讨论“编译期”需要结合具体上下文语境,因为它可能存在很多种情况: 前端编译器(叫&l...

2024-01-24

春眠不觉晓,Java数据类型知多少?基础牢不牢看完本文就有数了

文编|JavaBuild哈喽,大家好呀!我是JavaBuild,以后可以喊我鸟哥!俺滴座右铭是不在沉默中爆发,就在沉默中灭亡,一起加油学习,珍惜现在来之不易的学习时光吧,等工作之后,你就会发现,想学...

2024-01-24

Spring表达式语言(SPEL)学习(03)

rootObject在表达式中直接写name和getName(),这时候Expression是无法解析的,因为其不知道name和getName()对应什么意思@Testpublic void test06() { ExpressionParser parser...

2024-01-24

Java并发(二十二)----wait notify的正确姿势

开始之前先看看,sleep(long n) 和 wait(long n) 的区别:1) sleep 是 Thread 的静态方法,而 wait 是 Object 的方法2) sleep 不需要强制和 synchronized 配合使用,但 wait 需要和...

2024-01-24

Java中单体应用锁的局限性&分布式锁

互联网系统架构的演进在互联网系统发展之初,系统比较简单,消耗资源小,用户访问量也比较少,我们只部署一个Tomcat应用就可以满足需求。系统架构图如下:一个Tomcat可以看作是一个J...

2024-01-24

JVM学习-Class文件结构

文章原文:https://gaoyubo.cn/blogs/844dc0e7.html一、Class类文件的结构任何一个Class文件都对应着唯一的一个类或接口的定义信息。但是反过来说,类或接口并不一定都得定义在...

2024-01-24

Javac多模块化编译

转载:原文链接从SDK9开始,Java支持多模块编译。那么,怎么用javac实现多模块编译呢?项目介绍先来看看我们的项目。首先lib文件夹下是依赖模块,有一个hello模块。hello模块包含hell...

2024-01-24

用 SpringBoot 和 SSE 打造动态前端更新的终极指南

用 SpringBoot 和 SSE 打造动态前端更新的终极指南你知道什么是开发者的梦魇吗?慢!慢!慢!在一个需要实时数据更新的应用中,如果数据像乌龟一样慢吞吞地爬行,那用户体验就会像坐过...

2024-01-24

Java测试类中的方法调用的应用

方法调用在Java测试类中的应用,需要具体代码示例概述:
在Java编程中,方法调用是一种重要的概念,它允许程序员将代码逻辑组织成可重用和模块化的块。测试类是为了验证代码的正确...

2024-01-24

Maven安装与配置的步骤详解

Maven 是一个软件管理和构建项目的工具,它可以帮助开发者简化项目的构建和管理过程。本文将详细解读 Maven 的安装与配置步骤,并提供具体的代码示例。一、Maven 的安装步骤: 下...

2024-01-24

解密Struts2框架的设计原理和思想

揭秘Struts2框架背后的设计思想与原理简介随着Web应用的不断发展,开发人员需要面对越来越复杂的需求和技术挑战。为了更好地解决这些问题,软件开发框架应运而生。Struts2是一...

2024-01-24

Java爬虫工具:揭秘网络数据采集利器,抓取网页数据的实用工具

网络数据采集利器:探秘Java爬虫抓取网页数据的实用工具导语:随着互联网的发展,海量的数据被不断产生和更新,对这些数据进行采集和处理,成为了许多企业和个人的需求。为了满足这一...

2024-01-24

使用Java编写网络爬虫:构建个人数据收集器的实用指南

构建自己的数据收集器:使用Java爬虫抓取网页数据的实践指南引言:
在当今信息时代,数据是一种重要的资源,对于许多应用和决策过程至关重要。而互联网上蕴含着海量的数据,对于需要...

2024-01-24

一文搞懂什么是阻塞IO、信号驱动IO、Reactor模型、零拷贝

公众号《鲁大猿》,寻精品资料,帮你构建Java全栈知识体系 www.jiagoujishu.cn基础IO如何从数据传输方式理解IO流?从数据传输方式或者说是运输方式角度看,可以将 IO 类分为: 字节...

2024-01-24

用Spring Boot 3.2虚拟线程搭建静态文件服务器有多快?

Spring Boot 3.2 于 2023 年 11 月大张旗鼓地发布,标志着 Java 开发领域的一个关键时刻。这一突破性的版本引入了一系列革命性的功能,包括: 虚拟线程:利用 Project Loom 的虚拟...

2024-01-24

springsecurity 使用浅谈

springsecurity框架主要用于Web应用的认证和授权。所谓认证就是验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户。而授权就是经过认证后判断当前用户是否有...

2024-01-24

Spring 七种事务传播性介绍

作者:vivo 互联网服务器团队 - Zhou Shaobin本文主要介绍了Spring事务传播性的相关知识。Spring中定义了7种事务传播性: PROPAGATION_REQUIRED PROPAGATION_SUPPORTS PROP...

2024-01-24

JAVA API实现血缘关系Rest推送到DataHub V0.12.1版本

DataHub 更青睐于PythonAPI对血缘与元数据操作虽然开源源码都有Java示例和Python示例:但是这个API示例数量简直是1:100的差距!!不知为何,项目使用Java编写,示例推送偏爱Python的...

2024-01-24

Java反射,看完就会用

什么是反射在说反射概念之前,我们先说另外2个概念:编译期和运行期。编译期: 编译期是源代码从文本形式转换为字节码的过程,这发生在Java代码被JVM执行之前。 在编译期,编译器对源...

2024-01-24

Java 21 虚拟线程:使用指南(一)

虚拟线程是由 Java 21 版本中实现的一种轻量级线程。它由 JVM 进行创建以及管理。虚拟线程和传统线程(我们称之为平台线程)之间的主要区别在于,我们可以轻松地在一个 Java 程序...

2024-01-24

基于源码理解通透Iterator迭代器的Fail-Fast快速失败与Fail-Safe安全失败机制

原创/朱季谦在Java编程当中,Iterator迭代器是一种用于遍历如List、Set、Map等集合的工具。这类集合部分存在线程安全的问题,例如ArrayList,若在多线程环境下,迭代遍历过程中存在...

2024-01-24

Spring Boot 2.x 到 3.2 的全面升级指南

Spring Framework 是一种流行的开源企业级框架,用于创建在 Java Virtual Machine (JVM) 上运行的独立、生产级应用程序。而Spring Boot 是一个工具,可以让使用 Spring 框架更...

2024-01-24

使用Mybatis自定义插件实现不侵入业务的公共参数自动追加

背景后台业务开发的过程中,往往会遇到这种场景:需要记录每条记录产生时间、修改时间、修改人及添加人,在查询时查询出来。
以往的做法通常是手动在每个业务逻辑里耦合上这么一...

2024-01-24

Java线程池ThreadPoolExecutor源码解析

Java线程池ThreadPoolExecutor源码解析1.ThreadPoolExecutor的构造实现以jdk8为准,常说线程池有七大参数,通常而言,有四个参数是比较重要的 public ThreadPoolExecutor(int co...

2024-01-24

深入了解Java堆和栈的内部机制和工作方式

深入探究Java堆和栈的内部结构和工作原理Java作为一种面向对象的编程语言,其内存管理机制是其核心特性之一。在Java中,堆和栈是两个重要的内存区域,不同的数据类型会存储在不同...

2024-01-24

Java中不同数据结构的应用场景概览:从数组到链表的介绍

Java中的数据结构概览:从数组到链表,了解不同数据结构的应用场景,需要具体代码示例摘要:
数据结构是计算机中存储和组织数据的方式,对于开发人员来说,选择合适的数据结构可以提高...

2024-01-24

解析:深入探讨Java虚拟机的运作原理和关键功能

探究:Java虚拟机的工作原理和核心功能引言:
Java虚拟机(Java Virtual Machine,简称JVM)是Java程序运行的核心部分,它负责将Java源代码编译成可执行的字节码并执行。本文将深入探究...

2024-01-24

揭秘:Java虚拟机运行原理与关键功能

探究:Java虚拟机的工作原理和核心功能引言:
Java虚拟机(Java Virtual Machine,简称JVM)是Java程序运行的核心部分,它负责将Java源代码编译成可执行的字节码并执行。本文将深入探究...

2024-01-24

java发邮件的工具类有哪些

Java中有很多用于发送邮件的工具类和库,以下是其中一些常用的工具类:1、JavaMail API:JavaMail API是Java标准库的一部分,用于发送和接收电子邮件。它提供了一套丰富的API,可以方...

2024-01-24

揭秘Java常用的数据结构:深入详解必备知识

Java数据结构大揭秘:你需要知道的常用数据结构详解引言:在开发任何软件系统时,数据结构是不可或缺的一部分。它是在内存中组织和存储数据的方式,决定了数据的访问、插入、删除和...

2024-01-24

深入实战:学以致用的Java爬虫关键技术与经验分享

Java爬虫实战:学以致用的关键技术和经验分享导语:随着互联网的快速发展,爬虫技术成为了信息获取和数据分析的重要工具。本文将介绍Java爬虫的关键技术和经验分享,并提供具体的代...

2024-01-24

必须掌握的技能:了解Java虚拟机的作用和优点

Java开发者必备:了解Java虚拟机的作用和优势,需要具体代码示例Java虚拟机(Java Virtual Machine,简称JVM)是Java平台的最核心组成之一,它是一种在不同操作系统上运行Java程序的软...

2024-01-24

探索Java在大数据领域的应用:Hadoop、Spark、Kafka等技术栈的了解

Java大数据技术栈:了解Java在大数据领域的应用,如Hadoop、Spark、Kafka等随着数据量不断增加,大数据技术成为了当今互联网时代的热门话题。在大数据领域,我们常常听到Hadoop、Sp...

2024-01-24

掌握Java正则表达式的贪婪与非贪婪模式技巧

Java正则表达式语法技巧:贪婪模式和非贪婪模式在使用Java的正则表达式时,经常会遇到需要匹配尽可能多字符或尽可能少字符的情况。这就需要使用贪婪模式和非贪婪模式来控制匹配...

2024-01-24

选择适合你的五个优势与特点来解析Java反编译工具

解析Java反编译工具的优势与特点:选出最适合你的五个随着软件开发的迅猛发展,逐渐出现了一种需要对编译后的程序进行逆向操作的需求。Java反编译工具就应运而生,它可以帮助开发...

2024-01-24

Web开发的Java技术栈:了解Java EE、Servlet、JSP、Spring等常用于Web开发的技术

Java Web开发技术栈:掌握Java EE、Servlet、JSP、Spring等用于Web开发的技术随着互联网的迅速发展,在当今的软件开发领域,Web应用的开发已经成为一种非常重要的技术需求。而Jav...

2024-01-24

Java技术平台的发展:从J2SE到Java SE的进化过程

Java技术平台的演进历程:从J2SE到Java SE自Java语言诞生以来,它一直以其跨平台、安全性和可靠性而备受推崇。而Java技术平台的演进历程也一直在不断地迭代和改进,以适应不断发...

2024-01-24

Java爬虫中必须掌握的数据解析与处理技巧

数据解析与处理:Java爬虫中不可或缺的技术要点 前言随着互联网的迅速发展,数据成为了一种宝贵的资源。在这个信息爆炸的时代,爬虫成为了获取数据的重要手段。而在爬虫过程中,数...

2024-01-24

Java中常见的线性数据结构及其实现方式:从栈到队列的探索

从栈到队列:探索Java中常见的线性数据结构及其实现方式引言:
在计算机科学中,数据结构是组织和存储数据的一种方式。线性数据结构是其中之一,它的特点是数据元素之间存在明确的...

2024-01-24

java定时器怎么设置时间

在Java中,你可以使用Timer类和TimerTask类来实现定时任务。以下是一个简单的例子,演示了如何使用Timer和TimerTask设置定时器并执行任务:import java.util.Timer;import java.u...

2024-01-24
返回顶部
顶部