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.

92
Articles
0
Likes
62
Views
0
Comments
Recent Articles

Latest from Java Tech Workshop

92 recent articles
Java Tech Workshop
Java Tech Workshop
Jun 13, 2026 · Backend Development

Which DI Injection Method Should You Use in Production? Field vs Setter vs Constructor

The article compares Spring's three dependency‑injection styles—field, setter, and constructor—showing code, execution order, source‑code mechanics, risks such as null‑pointer windows and reflection tampering, and concludes that constructor injection (preferably with Lombok @RequiredArgsConstructor) is the production‑grade choice.

Constructor InjectionDependency InjectionField Injection
0 likes · 10 min read
Which DI Injection Method Should You Use in Production? Field vs Setter vs Constructor
Java Tech Workshop
Java Tech Workshop
Jun 11, 2026 · Backend Development

Building a Production-Ready SpringBoot + Vue3 Front‑End/Back‑End Separation Architecture

This article presents a step‑by‑step guide to constructing a full‑stack SpringBoot + Vue3 project with production‑grade features such as global exception handling, unified error codes, JWT authentication, multi‑environment configuration, CORS solutions, pagination, Pinia state management, on‑demand UI imports, and Nginx reverse‑proxy deployment.

NginxSpringBootcors
0 likes · 17 min read
Building a Production-Ready SpringBoot + Vue3 Front‑End/Back‑End Separation Architecture
Java Tech Workshop
Java Tech Workshop
Jun 10, 2026 · Backend Development

Mastering SpringBoot @Async: Thread‑Pool Configuration, Pitfalls, and Best Practices

The article explains why @Async, the most used async solution in SpringBoot, often causes OOM, missing trace IDs, silent failures, and task avalanches, and then walks through the underlying AOP mechanism, thread‑pool choices, timeout handling, context propagation, transaction interactions, monitoring, and dynamic tuning.

AsyncCompletableFutureMDC
0 likes · 13 min read
Mastering SpringBoot @Async: Thread‑Pool Configuration, Pitfalls, and Best Practices
Java Tech Workshop
Java Tech Workshop
Jun 9, 2026 · Backend Development

Spring Batch Basics: Building Efficient SpringBoot Batch Jobs

This article explains why naive for‑loop DB operations fail on large data sets, introduces Spring Batch’s chunk, transaction, retry, skip and restart features, and provides step‑by‑step SpringBoot configurations, code samples for Tasklet and Chunk jobs, database and CSV readers/writers, and manual or scheduled job triggering.

Batch ProcessingChunkRetry
0 likes · 18 min read
Spring Batch Basics: Building Efficient SpringBoot Batch Jobs
Java Tech Workshop
Java Tech Workshop
Jun 8, 2026 · Databases

Advanced SpringBoot Read‑Write Splitting: Master‑Slave Switching and Automatic Failover

In high‑concurrency internet architectures, a MySQL master‑slave setup with read‑write splitting is the baseline for high availability, but static routing suffers from node failures and lag; this article explains how ShardingSphere provides health checks, auto‑failover, load‑balancing, and degradation to achieve resilient read‑write separation.

Automatic FailoverHigh AvailabilityMySQL
0 likes · 14 min read
Advanced SpringBoot Read‑Write Splitting: Master‑Slave Switching and Automatic Failover
Java Tech Workshop
Java Tech Workshop
Jun 6, 2026 · Backend Development

Advanced SpringBoot Database Sharding with ShardingSphere

This article explains why single‑database, single‑table architectures hit performance limits at millions of rows, introduces ShardingSphere as the preferred zero‑deployment sharding solution for SpringBoot, and walks through vertical and horizontal splitting, configuration, custom algorithms, read/write splitting, and distributed transactions with practical code examples.

Custom Sharding AlgorithmDatabase ShardingDistributed Transaction
0 likes · 14 min read
Advanced SpringBoot Database Sharding with ShardingSphere
Java Tech Workshop
Java Tech Workshop
Jun 4, 2026 · Backend Development

Understanding SpringBoot Two‑Level Caching: MyBatis vs Application‑Level Cache

The article explains how layered caching in Java back‑ends—combining MyBatis first‑ and second‑level caches with a service‑layer Caffeine + Redis cache—affects cache granularity, consistency, distribution, and performance, and provides concrete configuration examples, code snippets, and best‑practice guidelines.

BackendCacheCaffeine
0 likes · 16 min read
Understanding SpringBoot Two‑Level Caching: MyBatis vs Application‑Level Cache
Java Tech Workshop
Java Tech Workshop
Jun 3, 2026 · Backend Development

Why Local Caffeine/Guava Caches Outperform Redis in High‑Concurrency SpringBoot Apps

SpringBoot developers can dramatically boost throughput and cut latency by pairing a microsecond‑level local cache (Caffeine or Guava) with Redis, using a two‑level architecture that isolates hot data in JVM memory, reduces network and serialization overhead, and provides configurable eviction policies for various use cases.

Cache EvictionCaffeineGuava
0 likes · 13 min read
Why Local Caffeine/Guava Caches Outperform Redis in High‑Concurrency SpringBoot Apps
Java Tech Workshop
Java Tech Workshop
Jun 2, 2026 · Backend Development

Implementing Distributed Locks in Spring Boot with Redis

This article explains why local locks like synchronized and ReentrantLock fail in microservice clusters, introduces the fundamentals and essential properties of distributed locks, walks through five iterative Redis lock implementations that address dead‑lock, atomicity, and timeout issues, and finally shows how to adopt the production‑grade Redisson library with best‑practice guidelines for key naming, lock scope, and lock type selection.

Javadistributed-lockmicroservices
0 likes · 17 min read
Implementing Distributed Locks in Spring Boot with Redis