首页
学习
活动
专区
圈层
工具
发布

#java

广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级 Web 应用开发和移动应用开发

Caffeine 核心架构与底层原理

学习........

Caffeine 在内存布局上做到了严格的职责分离,它的底层并非单一结构,而是由“数据的存储”与“淘汰元数据的存储”共同组成:

1200

在 Java 中,实现线程安全的 List 主要有三种常见方案

学习........

通过 Collections.synchronizedList(new ArrayList<>()) 生成的包装类。

1300

【SpringSecurity新手村系列】(7)基于资源权限码(Authority)的接口权限控制实战

Flittly

本章完成从“用户-角色-权限资源”数据模型到 @PreAuthorize 方法级拦截的完整闭环。和上一章“角色控制(Role)”不同,本章重点是 资源权限码(A...

2100

【SpringSecurity新手村系列】(6)基于角色的权限控制、权限拦截注解与自定义无权限页面

Flittly

本章在上一章的 RBAC 基础上,完成"认证之后如何授权"的闭环:先讲清基于角色的权限控制原理,再落地 @PreAuthorize 注解实现方法级拦截,最后处理...

800

Happen Before原则

兰亭集

volatile变量的读写直接发生在主存,volatile关键字也会防止volatile变量附近的指令重排,保证变量的可见性:

1800

AbstractQueuedSynchronizer

兰亭集

从ReentrantLock FairSync加锁一步步理解acquire方法的实现,

1200

ReentrantLock 与 Condition

兰亭集

ReentrantLock内部类FairSync和NonFairSync继承了AbstractQueuedSynchronizer实现了公平锁和非公平锁,

1800

synchronized 和 wait/notify

兰亭集

Java的每一个object都关联了一个隐藏的monitor对象,任一时刻只会有一个线程持有monitor锁,monitor对象有几个主要属性:

1400

线程池

兰亭集

一个Thread对象是一个用户态线程,对应着一个操作系统内核态线程。一个线程的所有状态:

1800

【JVM】垃圾回收算法 && 垃圾回收器 && 一个对象的生命周期

lirendada

垃圾回收机制是 JVM 自动管理内存的一种能力,主要负责清除不再使用的对象,从而避免内存泄漏或溢出。其目标就是:

3400

【SpringSecurity新手村系列】(5)RBAC角色权限与账户状态校验

Flittly

本章继续完善 Spring Security:把数据库中的用户、角色、权限真正接入认证流程,同时补齐账户状态字段(是否过期、是否锁定、凭证是否过期、是否启用),...

1200

Java 合并 Excel 文件的几种实用方法

用户12416476

在企业应用中,处理 Excel 文件是非常常见的需求,无论是财务报表、销售统计,还是数据分析,合并 Excel 文件都是必不可少的操作。不同的业务场景对合并方式...

4810

PageOffice 实现 Word 文件添加水印

用户12004816

- [查看本示例演示效果(Windows版)](https://www.bilibili.com/video/BV1M34y1A7qL?p=16)

4710

Agent开发:Java视角下的RAG数据处理

kody_w

在构建基于Agent的大模型应用时,检索增强生成(RAG) 是连接私有数据与大模型能力的关键桥梁。然而,我在实践中发现,很多开发者往往将注意力集中在Agent的...

8010
领券