关于Java中的try-with-resources语句

目录介绍语法介绍try-with-resources是Java中的环绕语句之一,旨在减轻开发人员释放try块中使用的资源的义务。它最初在Java 7中引入,背后的全部想法是,开发人员无需担心仅在一...

2023-05-17

RocketMQ源码分析之Broker过期消息清理机制

目录前言Broker消息清理机制简介Broker与消息清理相关配置消息清理机制源码分析CommitLog清理源码分析ConsumeQueue和IndexFile清理源码分析ConsumeQueue文件清理IndexFile...

2023-05-17

关于如何正确地定义Java内部类方法详解

目录一. 内部类简介1. 概念2. 优点3. 分类4. 内部类的特点5. Java类的创建要求二. 成员内部类1. 概念2. 特点3. 语法4. 案例4.1 定义成员内部类4.2 定义测试类5. 访问方式小...

2023-05-17

关于Mybatis-Plus Wrapper是否应该出现在Servcie类中

目录一、问题二、优化建议三、Repository模式一、问题最近在做代码重构,代码工程采用了Controller/Service/Dao分层架构,Dao层使用了Mybatis-Plus框架。
在查看Service层时发...

2023-05-17

Mybatis-Plus实现SQL拦截器的示例

目录起源实现拦截器接口InnerInterceptor修改sql常用的工具类起源最近公司要做多租户,Mybatis-Plus的多租户插件很好用,但是有一个场景是:字典表或者某些数据表,一些数据需要在...

2023-05-17

详解Java中Object 类的使用

目录Object 类提供的方法方法实例clone() 方法equals() 方法finalize() 方法getClass() 方法hashCode() 方法wait() 方法notify() 与 notifyAll() 方法toString() 方法Java...

2023-05-17

Java中instanceOf关键字的用法及特性详解

目录一. instanceOf关键字1. 简介2. 语法3. 案例二. 结语一. instanceOf关键字1. 简介在上面学习类型转换时,跟大家讲过,在向下转型时,如果两个类型之间没有直接或间接的继承关...

2023-05-17

maven多模块依赖版本不一致问题解决

目录项目结构:项目环境:问题:maven依赖原则:复习springcloud-alibaba的时候,在自己本地搭建好了环境并做了个测试没有发现异常,第二天在公司克隆代码下来之后服务器启动失败,在此记...

2023-05-17

关于Hadoop的HDFS集群

目录每台计算机中的配置具体步骤配置原型部署集群HDFS 集群是建立在 Hadoop 集群之上的,由于 HDFS 是 Hadoop 最主要的守护进程,所以 HDFS 集群的配置过程是 Hadoop 集群配置...

2023-05-17

Java中线程组ThreadGroup与线程池的区别及示例

目录线程组概念理解线程组实践线程组和线程池的区别线程组概念理解在java的多线程处理中有线程组ThreadGroup的概念,ThreadGroup是为了方便线程管理出现了,可以统一设定线程组...

2023-05-17

Java之一文详解String字符串的用法

目录一. String字符串简介1. 概述2. 与字符的区别3. 定义方式3.1 构造方法定义3.2 直接赋值定义二. 字符串实用方法1. 字符串的比较方法2. 判断字符串是否为空3. 判断相关的...

2023-05-17

探究Java中Integer缓冲区底层原理

目录一. Integer底层原理探究1. int和Integer的区别2. 被final修饰的Integer类3. IntegerCache缓冲区4. 几个核心实验4.1 比较new出的两个Integer对象4.2 Integer对象和int...

2023-05-17

RocketMQ ConsumeQueue与IndexFile实时更新机制源码解析

目录前言ConsumeQueue详解IndexFile详解IndexHeaderslots槽位indexes索引数据实时更新ConsumeQueue与IndexFile源码分析CommitLogDispatcherBuildConsumeQueue源码分析Commi...

2023-05-17

NIO深入理解FileChannel使用方法原理

目录前言FileChannelFileChannel的创建RandomAccessFile中的模式FileChannel操作文件读文件操作写文件操作对文件的更新强制输出到底层存储设备通道之间数据传输MappedByteB...

2023-05-17

Mybatis-Plus中getOne方法获取最新一条数据的示例代码

目录Mybatis-Plus中getOne方法获取最新一条数据一、代码1、Controller2、Service3、效果Mybatis-Plus中getOne方法获取最新一条数据一、代码1、Controller @GetMapping("...

2023-05-17

JVM 的 noverify 启动参数问题解析

目录JDK 13 + 版本的问题当 ClassLoader 加载的 Java 字节码时,字节码首先接受校验器(verifier)的校验。校验器负责检查那些指令无法执行的明显的破坏性的操作。校验器执行的检...

2023-05-17

Java中的接口及其应用场景解读

目录一、接口的特点二、定义接口1.interface关键字2.implements关键字三、应用场景1.接口表示规范2.接口表示能力/行为四、接口和类之间的关系五、接口的命名规范总结一、接...

2023-05-17

MybatisPlus实现逻辑删除的示例代码

目录1、什么是逻辑删除2、使用说明:3、如何使用Mybatis Plus实现逻辑删除4、测试1、什么是逻辑删除逻辑删除是名义上的删除,就是对要要删除的数据打上一个删除标记,在逻辑上...

2023-05-17

浅谈一下Java线程组ThreadGroup

目录1 简介2 线程组树的结构3 线程组的构造4 API5 终止线程组中的所有线程1 简介一个线程集合。是为了更方便地管理线程。父子结构的,一个线程组可以集成其他线程组,同时也可...

2023-05-17

Java大数据处理的核心技术MapReduce框架

目录MapReduce框架1、框架图2、Input数据输入2.1概念2.2数据切片与MapTask并行度2.3切片过程2.4类图2.5TextInputFormat2.6CombineTextInputFormat2.7Read阶段3、Map阶段4、...

2023-05-17

一文带你搞懂Java中方法重写与方法重载的区别

目录一. 方法重写1. 概念2. 基本要求3. 注意事项4. 代码实现4.1 定义父类4.2 定义子类4.3 @Override注解5. 变量隐藏5.1 概念5.2 案例实现6. 方法隐藏6.1 概念6.2 案例实现6...

2023-05-17

RocketMQ Broker如何保存消息源码解析

目录前言消息存储格式总览CommitLog介绍MappedFile详解消息存储格式介绍DefaultMessageStore介绍消息存储源码分析发送消息存储流程消息预处理阶段消息保存阶段消息保存结果...

2023-05-17

RocketMQ Broker消息如何刷盘源码解析

目录前言刷盘相关类介绍Broker刷盘源码分析CommitLog构造&属性赋值TransientStorePoolEnabled介绍消息保存源码分析消息刷盘入口方法源码分析总结前言我们在学习RocketMQ的...

2023-05-17

关于Java8新特性Optional类的详细解读

目录一、Optional类的出现二、Optional类概述三、Optional类常用方法1. 创建Optional类对象的方法2. 判断Optional容器中是否包含对象3. 获取Optional容器的对象四、代码演...

2023-05-17

关于Java的Condition接口最佳理解方式

Condition就是实现了管程里面的条件变量。Java 语言内置的管程里只有一个条件变量,而Lock&Condition实现的管程支持多个条件变量。 支持多个条件变量,能让代码可读性更好,实现...

2023-05-17

maven setting.xml文件配置禅定之旅

目录一、setting.xml文件的位置二、代理服务器配置(proxies)三、远程仓库配置(mirrors)四、自定义配置(profiles)五、禅定小结一、setting.xml文件的位置今天我们来谈谈Maven sett...

2023-05-17

关于Java如何正确地实现方法重载详解

目录一. 方法重载1. 概念2. 要求二. 代码案例1. 普通方法重载2. 构造方法重载三. 结语一. 方法重载1. 概念所谓方法的重(chong)载(重复出现),就是指在一个类中可以有多个名称...

2023-05-17

JavaWeb实现学生管理系统的超详细过程

目录一、项目介绍二、项目结构三、前期准备1.配置maven环境,在pom.xml配置文件中配置项目所依赖的jar包2.在MySql数据库中,创建登录注册表login和学生信息表student3.配置toca...

2023-05-17

关于SpringBoot的异常回滚和事务的使用详解

目录Springboot中事务的使用:开启事务的方法中事务回滚的情况:Springboot @Transactional 事务不回滚一、异常捕获的原因二、数据库引擎不支持回滚(使用MYSQL就很可能是这个原...

2023-05-17

Java关键字之this用法详解

目录一. this关键字1. 简介2. 作用二. 代码案例1. 代表当前类对象2. 调用类中的属性3. 调用类中的方法4. 调用类的构造方法三. 结语一. this关键字1. 简介我们知道,this是&rd...

2023-05-17

四个Java常见分布式锁的选型和性能对比

目录1. 基于数据库的分布式锁2. 基于缓存的分布式锁3. 基于ZooKeeper的分布式锁4. 基于Redis的分布式锁1. 基于数据库的分布式锁实现原理: 基于数据库的分布式锁使用数据库的...

2023-05-17

Java ScheduledExecutorService的具体使用

目录1. 延迟不循环任务schedule方法2. 延迟且循环cheduleAtFixedRate方法3. 严格按照一定时间间隔执行``ScheduledExecutorService有线程池的特性,也可以实现任务循环执行,可...

2023-05-17

SpringBoot项目速度提升之延迟初始化(Lazy Initialization)详解

目录前言是什么?有啥用?如何实现?全局懒加载注意的点总结前言在一个名为种花家的小镇上,生活着一群热爱编程的人。他们致力于构建出高效、可维护的软件系统,而 Spring Boot 框架...

2023-05-17

FastJSON的0day漏洞的解决

目录一、问题背景1.1、漏洞名称1.2、漏洞描述1.3、影响范围1.4、官方解决方案1.5、防护建议(1)Web应用防火墙(2)WAF自定义防护规则TAM关于fastjson javaweb框架0day漏洞回溯和实...

2023-05-17

Java 中限制方法的返回时间最新方法

最近在研究 ChatGPT 的 API 调用。因为 ChatGPT 的 API 调用时间通常超过 30 秒。所以我们希望在程序中限制这个方法的执行时间,不要让方法花太长时间去执行了。JDK 方法可以...

2023-05-17

关于Spring中@Transactional事务回滚的注意事项

目录一、Spring 默认事务1.1、抛出 unchecked 和 checked 异常都回滚1.2、总结二、使用 Spring中 @Transactional 注解的注意事项一、Spring 默认事务Spring中 @Transaction...

2023-05-17

一分钟掌握Java ElasticJob分布式定时任务

目录前言架构功能和特性入门角色写个例子任务执行流程ScheduleJobBootstrap初始化ScheduleJobBootstrap执行执行流程总结分片的策略前言ElasticJob 是面向互联网生态和海量...

2023-05-17

Java并发编程ReentrantReadWriteLock加读锁流程

目录正文属性介绍加锁成功处理正文protected final int tryAcquireShared(int unused) { Thread current = Thread.currentThread(); int c = getState(); if (exc...

2023-05-17

Java Socket 编程详解

目录一、Socket 基础知识1.1 Socket 概述1.2 Socket 通信模型1.3 Socket 编程流程二、Java Socket 编程实现2.1 创建 Socket 对象2.2 绑定 Socket 地址2.3 启动监听进程或连...

2023-05-17

使用Java操作TensorFlow的方法

目录简介TensorFlow为何物?张量与操作安装TensorFlowTensorFlow的JavaAPI类枚举接口异常图(Graphs)常量占位符函数图形可视化会话(Sessions)Java当中加载Python中Saving模块...

2023-05-17

Java JSON处理库之Gson的用法详解

目录引言Gson的基本功能1. 将Java对象转换为JSON字符串(序列化)2. 将JSON字符串转换为Java对象(反序列化)使用Gson的基本步骤1. 添加依赖2. 创建Java对象模型3. 使用Gson进行序...

2023-05-17

详解Java如何在Array和List之间进行转换

目录概述从 List 转换为 Array使用原生 Java 代码使用 Guava把 Array 转换为 List使用原生 Java使用 Guava使用 Commons 集合结论概述在本文章中,我们对如何在 Java 中对 Arr...

2023-05-17

关于@DS注解切换数据源失败的原因实战记录

目录项目场景:问题排查过程第一个问题,数据源没有载入第二个问题,@DS注解切换数据源无效总结项目场景:一位好友在陈年老代码中想要加入mybatis-plus和boumidou的多数据源来轻松...

2023-05-17

Java获取登录用户的IP地址示例代码

示例代码如下package com.audaque.util; import java.net.InetAddress;import java.net.UnknownHostException; import javax.servlet.http.HttpServletRequest; public cla...

2023-05-17

学习Java之如何正确地向上转型与向下转型

目录一. 类型转型二. 向上转型1. 概念2. 特点3. 语法4. 案例三. 向下转型1. 概念2. 特点3. 语法4. 案例四. 结语一. 类型转型将一个类型转换成另一个类型的过程被称为类型转...

2023-05-17

Java如何利用递归计算出阶乘

目录一. 递归1. 简介2. 使用场景3. 特点4. 基本用法5. 三大要素6. 代码案例6.1 计算阶乘6.2 输出数字中每一位上的值二. 结语一. 递归1. 简介所谓的递归,其实是一种解决问题...

2023-05-17

Java算法比赛常用方法实例总结

1. 开方:Math.sqrt(x);2. x的a方:Math.pow(x,a);3. 绝对值:Math.abs(x);4. BigInteger:大数(加,减,乘,除,取余)c.add(d) ; c.subtract(d);c.multiply(d);c.divide(d);c.mod(d)5. 判断回文:p...

2023-05-17

使用Java桥接模式打破继承束缚优雅实现多维度变化

目录一、导言1.1 介绍桥接模式及其应用背景1.2 提出文章的主要目的和内容概述二、设计原则和模式分析1.1 讲解面向接口编程和实现分离的设计原则2.2 探讨桥接模式的工作原理...

2023-05-17

全面详解Maven打包及其相关插件和高级特性

目录正文1. Maven打包相关插件1.1 maven-jar-plugin1.2 maven-shade-plugin1.3 spring-boot-maven-plugin2. Maven构建的高级特性2.1 使用profiles2.2 profiles的传递性2.3...

2023-05-17

maven依赖传递和依赖冲突原理

目录正文1. 依赖传递原理1.1 传递范围1.2 依赖传递的优势2. 依赖冲突2.1 依赖冲突的表现2.2 产生原因3. 解决依赖冲突的办法3.1 依赖调解原则3.2 显示声明依赖3.3 使用depen...

2023-05-17
返回顶部
顶部