Java Tech Workshop
Author

Java Tech Workshop

Focused on Java backend technologies, sharing fundamentals, multithreading, JVM, the Spring ecosystem, microservices, distributed systems, high concurrency, source‑code analysis, and practical experience. Continuously delivers high‑quality original content, interview guides, and learning roadmaps to help Java developers progress from beginner to advanced, enhancing technical skills and core competitiveness.

160
Articles
0
Likes
885
Views
0
Comments
Recent Articles

Latest from Java Tech Workshop

100 recent articles max
Java Tech Workshop
Java Tech Workshop
Aug 29, 2026 · Backend Development

When a ThreadPool Queue Is Full: How ThreadPoolExecutor Expands and Handles Rejection

The article explains the exact order in which ThreadPoolExecutor expands—core threads, queueing, non‑core threads, then rejection—illustrates the behavior with a runnable example, compares the four built‑in RejectedExecutionHandler strategies, debunks common misconceptions, and offers production‑grade configuration and monitoring best practices.

Java ConcurrencyThreadPoolExecutorperformance tuning
0 likes · 24 min read
When a ThreadPool Queue Is Full: How ThreadPoolExecutor Expands and Handles Rejection
Java Tech Workshop
Java Tech Workshop
Aug 21, 2026 · Backend Development

SpringBoot Core Annotations: @ControllerAdvice, @RestControllerAdvice, @Validated

SpringBoot developers often misuse @ControllerAdvice, @RestControllerAdvice, and @Validated, leading to uncaught exceptions, ambiguous responses, and validation errors; this article explains each annotation’s underlying mechanism, proper usage for global exception handling, data binding, request preprocessing, and group‑based validation, and provides production‑ready code examples.

ControllerAdviceGroup ValidationRestControllerAdvice
0 likes · 20 min read
SpringBoot Core Annotations: @ControllerAdvice, @RestControllerAdvice, @Validated
Java Tech Workshop
Java Tech Workshop
Aug 18, 2026 · Backend Development

Beyond Adding Indexes: From Disk Pages to B+Tree – Master MySQL Index Design and Operation

This article explains why indexes speed up queries by reducing disk I/O, dives into MySQL's page structure and B+Tree evolution, compares clustered and secondary indexes, clarifies composite index rules, lists common index‑misuse scenarios, and provides seven practical guidelines for designing efficient MySQL indexes.

B+ treeComposite IndexInnoDB
0 likes · 20 min read
Beyond Adding Indexes: From Disk Pages to B+Tree – Master MySQL Index Design and Operation
Java Tech Workshop
Java Tech Workshop
Aug 17, 2026 · Backend Development

How to Keep Redis and MySQL Consistent? Update DB First or Delete Cache First?

This article analyzes why cache and database can become inconsistent, compares four basic cache‑update patterns, explains the delayed double‑delete technique, shows how to use MQ for retrying cache deletions, and evaluates Canal binlog subscription as a zero‑intrusion solution for strong eventual consistency.

Cache ConsistencyCanal BinlogDelayed Double Delete
0 likes · 28 min read
How to Keep Redis and MySQL Consistent? Update DB First or Delete Cache First?
Java Tech Workshop
Java Tech Workshop
Aug 14, 2026 · Backend Development

Is Your Configuration Actually Bound? A Full‑Stack Breakdown of Spring Boot @ConfigurationProperties

The article explains the complete binding process of Spring Boot’s @ConfigurationProperties, covering configuration loading, property source merging, Binder execution, validation, registration, registration methods, naming conventions, complex type handling, metadata generation, and dynamic refresh, while providing practical code examples and troubleshooting tips.

Spring Bootbinderconfiguration-properties
0 likes · 17 min read
Is Your Configuration Actually Bound? A Full‑Stack Breakdown of Spring Boot @ConfigurationProperties
Java Tech Workshop
Java Tech Workshop
Aug 13, 2026 · Backend Development

Is Your SpringBoot @Scheduled Task Reliable? A Full‑Stack Breakdown

This article examines the hidden pitfalls of SpringBoot’s @Scheduled annotation—such as duplicate runs in clusters, single‑thread blocking, uncaught exceptions, and lack of monitoring—and provides a step‑by‑step guide to configuring custom thread pools, distributed locks, timeout handling, dynamic task management, and observability for production‑grade reliability.

Redis LockSpringBootThreadPool
0 likes · 19 min read
Is Your SpringBoot @Scheduled Task Reliable? A Full‑Stack Breakdown
Java Tech Workshop
Java Tech Workshop
Aug 12, 2026 · Backend Development

6 Elegant Ways to Auto‑Fill Common Fields in SpringBoot (No Hand‑Coding Needed)

SpringBoot developers can eliminate repetitive manual setting of common fields like create_time, update_time, create_by, and update_by by using six automatic filling solutions—from database default values and MyBatis‑Plus meta‑object handlers to JPA auditing, MyBatis interceptors, AOP aspects, and controller request‑body advice—each with its own pros, cons, and ideal scenarios.

AOPAuto-fillJPA
0 likes · 19 min read
6 Elegant Ways to Auto‑Fill Common Fields in SpringBoot (No Hand‑Coding Needed)
Java Tech Workshop
Java Tech Workshop
Aug 11, 2026 · Backend Development

Achieving 6 Million Orders per Second with SpringBoot and LMAX Disruptor

The article explains why traditional Java BlockingQueue struggles under high load, introduces the LMAX Disruptor’s lock‑free ring buffer design, compares performance showing up to 600 万+ events per second versus 100 万 for ArrayBlockingQueue, and provides step‑by‑step SpringBoot integration with code examples and best‑practice tips.

DisruptorJavaSpringBoot
0 likes · 17 min read
Achieving 6 Million Orders per Second with SpringBoot and LMAX Disruptor
Java Tech Workshop
Java Tech Workshop
Aug 10, 2026 · Backend Development

SpringBoot Backend Anti‑Duplicate Submission: Stop “Hand‑Shake” Clicks with Redis‑AOP

This article explains why frontend debouncing cannot fully prevent duplicate form submissions, compares common backend anti‑duplicate strategies, and provides a step‑by‑step guide to implementing a robust, annotation‑driven solution in SpringBoot using Redis distributed locks, AOP, and custom exception handling.

AOPAnnotationBackend
0 likes · 16 min read
SpringBoot Backend Anti‑Duplicate Submission: Stop “Hand‑Shake” Clicks with Redis‑AOP
Java Tech Workshop
Java Tech Workshop
Aug 9, 2026 · Backend Development

How Does Spring Boot Load Its Logging System?

This article explains Spring Boot's logging architecture, the early initialization process driven by LoggingApplicationListener, the three‑layer design with SLF4J, bridge packages and Logback, configuration file loading order, differences between logback.xml and logback‑spring.xml, and common troubleshooting steps.

JavaSpring Bootconfiguration
0 likes · 16 min read
How Does Spring Boot Load Its Logging System?