Java 第249页
ThreadLocal真会内存泄漏?-拾光赋

ThreadLocal真会内存泄漏?

前言 在讨论ThreadLocal存在内存泄漏问题之前,需要先了解下面几个知识点: 什么是内存泄漏? 什么是ThreadLocal? 为什么需要ThreadLocal? 数据一致性问题 如何解决数据一致性问题? 当我们了...
Lee的头像-拾光赋Lee2年前
0250
Tomcat 配合虚拟线程,一种新的编程体验-拾光赋

Tomcat 配合虚拟线程,一种新的编程体验

Java 21 在今年早些时候的 9 月 19 日就正式发布,并开始正式引入虚拟线程,但是作为 Java 开发生态中老大哥 Spring 并没有立即跟进,而是在等待了两个月后的 11 月 29 日,伴随着 Spring Boot ...
Lee的头像-拾光赋Lee3年前
0250
从零手写实现 nginx-35-proxy_pass netty 如何实现?-拾光赋

从零手写实现 nginx-35-proxy_pass netty 如何实现?

前言 大家好,我是老马。很高兴遇到你。 我们为 java 开发者实现了 java 版本的 nginx https://github.com/houbb/nginx4j 如果你想知道 servlet 如何处理的,可以参考我的另一个项目: 手写从零...
Lee的头像-拾光赋Lee2年前
0250
spring声明式事务(@Transactional)开发常犯的几个错误及解决办法-拾光赋

spring声明式事务(@Transactional)开发常犯的几个错误及解决办法

目前JAVA的微服务项目基本都是SSM结构(即:springCloud +springMVC+Mybatis),而其中Mybatis事务的管理也是交由spring来管理,大部份都是使用声明式事务(@Transactional)来进行事务一致性的...
Lee的头像-拾光赋Lee2年前
0250
【重构的哲学】这个方法调用,我们怎么重构?AI不一定能告诉你!-拾光赋

【重构的哲学】这个方法调用,我们怎么重构?AI不一定能告诉你!

先上代码。下面代码来自于某外部通道的接口对接实现类,功能是请求该外部通道的查单接口并返回查单结果。 public Result<RechargeResultVO> queryOrder(String orderNo) { JSONObject jso...
Lee的头像-拾光赋Lee2年前
0250
InheritableThreadLocal,从入门到放弃-拾光赋

InheritableThreadLocal,从入门到放弃

InheritableThreadLocal,从入门到放弃,InheritableThreadLocal相比ThreadLocal多一个能力:在创建子线程Thread时,子线程Thread会自动继承父线程的InheritableThreadLocal信息到子线程中,进而...
Lee的头像-拾光赋Lee4天前
02414
一维\多维数组-拾光赋

一维\多维数组

  一、声明数组变量 必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法: dataType[] arrayRefVar;   // 首选的方法 或 dataType arrayRefVar[];  // 效果相同...
Lee的头像-拾光赋Lee2年前
0240
CompletableFuture异步回调-拾光赋

CompletableFuture异步回调

CompletableFuture异步回调 CompletableFuture简介 CompletableFuture被用于异步编程,异步通常意味着非阻塞,可以使得任务单独允许在与主线程分离的其他线程中,并且通过回调可以在主线程中得...
Lee的头像-拾光赋Lee3年前
0240
一个适用于搭建企业内部培训平台的开源系统-拾光赋

一个适用于搭建企业内部培训平台的开源系统

大家好,我是 Java陈序员。 问君能有几多愁,唯有开源项目解千愁! 最近领导给了个任务,搭建一个企业内部培训平台!好不容易刚完成上个任务,又来一个活,这不又得加班了! 还好,之前逛 GitHu...
Lee的头像-拾光赋Lee3年前
0240
一张图搞懂微服务架构设计-拾光赋

一张图搞懂微服务架构设计

前言 当前,微服务架构在很多公司都已经落地实施了,下面用一张图简要概述下微服务架构设计中常用组件。不能说已经使用微服务好几年了,结果对微服务架构没有一个整体的认知,一个只懂搬砖的程...
Lee的头像-拾光赋Lee2年前
0240
剑指offer-32、把数组排成最⼩的数-拾光赋

剑指offer-32、把数组排成最⼩的数

剑指offer-32、把数组排成最⼩的数,题⽬描述 输⼊⼀个正整数数组,把数组⾥所有数字拼接起来排成⼀个数,打印能拼接出的所有数字中最⼩的⼀个。例如输⼊数组 {3,32,321} ,则打印出这三个数字...
Lee的头像-拾光赋Lee4个月前
02410
为什么在EffectiveJava中建议用EnumSet替代位字段,以及使用EnumMap替换序数索引-拾光赋

为什么在EffectiveJava中建议用EnumSet替代位字段,以及使用EnumMap替换序数索引

为什么在EffectiveJava中建议用EnumSet替代位字段,以及使用EnumMap替换序数索引,在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,在第37条中建议 用EnumMap替换序数索引,为什么? E...
Lee的头像-拾光赋Lee2年前
0240