Tagged articles

Spring Boot

4573 articles · Page 4 of 46
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 5, 2026 · Backend Development

Master 8 Design Patterns in Spring Boot with Real-World Examples

This article walks through eight essential design patterns—Factory Method, Prototype, Adapter, Decorator, Observer, Strategy, Template Method, and Chain of Responsibility—showing concrete Spring Boot 3.5.0 code examples, explaining the problems each pattern solves, and highlighting their practical advantages for clean, extensible backend development.

AdapterChain of ResponsibilityDecorator
0 likes · 24 min read
Master 8 Design Patterns in Spring Boot with Real-World Examples
Java Tech Workshop
Java Tech Workshop
Jul 5, 2026 · Backend Development

How to Elegantly Bind Custom Configuration Parameters with @ConfigurationProperties

This article explains why using @Value for configuration leads to scattered, unvalidated settings and demonstrates how Spring Boot's @ConfigurationProperties provides batch binding, nested object support, built‑in validation, default values, and starter integration for clean, maintainable configuration management.

@ConfigurationPropertiesBackendJava
0 likes · 18 min read
How to Elegantly Bind Custom Configuration Parameters with @ConfigurationProperties
Xiaolin Talks Programming
Xiaolin Talks Programming
Jul 5, 2026 · Backend Development

Spring Boot HTTP Client Tuning: From RestTemplate to HttpClient 5 for Production Connection Pools

This guide details production-grade HTTP client tuning in Spring Boot, covering RestTemplate pitfalls, HttpClient 5 configuration, connection pool sizing via Little's Law, timeout layering, HTTP/2 trade-offs, business isolation patterns, interceptor chains, graceful shutdown, and metrics-driven troubleshooting for connection leaks.

HTTP/2HttpClient 5RestTemplate
0 likes · 18 min read
Spring Boot HTTP Client Tuning: From RestTemplate to HttpClient 5 for Production Connection Pools
java1234
java1234
Jul 4, 2026 · Mobile Development

Building a WeChat Mini‑Program Health Management System with AI in 20 Minutes (Spring AI 2.0 + Spring Boot 4 + Vue 3)

In just 20 minutes, the author uses Cursor AI to generate a full‑stack WeChat mini‑program for personal health management, featuring an AI‑driven health consultant, a Spring Boot 4 backend with JWT security, MySQL storage, and a Vue 3 admin console, and explains the architecture, routing, and deployment details.

AI chatbotJWTMySQL
0 likes · 10 min read
Building a WeChat Mini‑Program Health Management System with AI in 20 Minutes (Spring AI 2.0 + Spring Boot 4 + Vue 3)
Tinker Programmer
Tinker Programmer
Jul 3, 2026 · Backend Development

How Aggregate Roots Guard Business Invariants – The Final Defense Line

The article examines a payroll bug caused by exposing internal collections, then explains three immutable‑focused rules for aggregate roots—expose only through the root, keep each transaction to a single aggregate, and reference other aggregates by ID only—showing how proper design prevents consistency errors, performance loss, and concurrency conflicts in Spring Boot applications.

@TransactionalAggregate RootDomain Events
0 likes · 17 min read
How Aggregate Roots Guard Business Invariants – The Final Defense Line
Xiaolin Talks Programming
Xiaolin Talks Programming
Jul 3, 2026 · Backend Development

API Versioning & Smooth Migration: Spring Boot Routing Strategies and Production Governance

This article presents a comprehensive production-grade approach to API version management in Spring Boot, covering version identification strategies, custom routing via RequestCondition, DTO isolation with MapStruct, deprecation interceptors with Prometheus metrics, gateway-level traffic splitting using Spring Cloud Gateway and Nginx, and a lifecycle state machine with automated retirement rules.

API VersioningMapStructOpenAPI
0 likes · 18 min read
API Versioning & Smooth Migration: Spring Boot Routing Strategies and Production Governance
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 3, 2026 · Backend Development

7 Ways to Add a Unified Prefix to Spring Boot Controllers

This article explains why a common API prefix (e.g., /api/v1) is useful in microservice or front‑back separation projects and demonstrates seven practical techniques—custom DispatcherServlet registration, YAML configuration, SpEL‑based @RequestMapping, custom composed annotation, WebMvcConfigurer addPathPrefix, internal forwarding, Spring Cloud Gateway ProxyExchange, and Nginx reverse proxy—using Spring Boot 3.5.0 examples and code snippets.

ControllerJavaNginx
0 likes · 8 min read
7 Ways to Add a Unified Prefix to Spring Boot Controllers
The Dominant Programmer
The Dominant Programmer
Jul 2, 2026 · Backend Development

Understanding Redisson from Scratch: A Java Distributed Toolbox Guide and Hands‑On

This article introduces Redisson, a Redis‑based Java client that wraps Redis commands into familiar Java concurrency primitives, compares it with Jedis and Lettuce, explains why custom distributed locks are error‑prone, and provides step‑by‑step code for configuring, using, and integrating its core features such as locks, maps, queues, and rate limiters in Spring Boot.

JavaRate LimiterRedis
0 likes · 16 min read
Understanding Redisson from Scratch: A Java Distributed Toolbox Guide and Hands‑On
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 2, 2026 · Backend Development

Why Spring Boot Prefers Slice Over Page for Massive Data Sets

The article analyzes Spring Data JPA's Page and Slice pagination options, explains the hidden COUNT(*) overhead of Page, demonstrates both approaches with code examples, compares performance and UX impacts, and provides guidance on when to choose Slice for large‑scale or infinite‑scroll scenarios.

BackendPerformanceSpring Boot
0 likes · 11 min read
Why Spring Boot Prefers Slice Over Page for Massive Data Sets
Java Tech Workshop
Java Tech Workshop
Jul 2, 2026 · Backend Development

Spring Boot Auto‑Configuration Unveiled: The @EnableAutoConfiguration SPI Mechanism

Spring Boot achieves zero‑XML, out‑of‑the‑box auto‑configuration by leveraging a custom SPI mechanism driven by @EnableAutoConfiguration, which replaces the legacy spring.factories with @AutoConfiguration imports, employs deferred import selectors, hierarchical ordering, and conditional annotations to dynamically load and prioritize beans.

Auto-configurationConditional AnnotationsSPI
0 likes · 12 min read
Spring Boot Auto‑Configuration Unveiled: The @EnableAutoConfiguration SPI Mechanism
Xiaolin Talks Programming
Xiaolin Talks Programming
Jul 2, 2026 · Backend Development

Building High-Reliability Message-Driven Architecture with Spring Boot: Preventing Loss, Duplicates & Backlogs

This article details production-hardened patterns for building reliable message-driven systems with Spring Boot, covering MQ selection, producer confirmations, local message tables, manual acknowledgment, retry with backoff, dead-letter queues, idempotency strategies, backlog monitoring, ordered messaging, distributed tracing, and JVM/OS tuning parameters.

Backpressure HandlingJVM TuningReliability Patterns
0 likes · 20 min read
Building High-Reliability Message-Driven Architecture with Spring Boot: Preventing Loss, Duplicates & Backlogs
Su San Talks Tech
Su San Talks Tech
Jul 2, 2026 · Backend Development

Replace if…else with a Lightweight Rule Engine: Introducing Easy Rules

The article explains why deep nesting of if…else statements harms readability, maintainability and testability, and shows how the Java Easy Rules engine can extract business logic into reusable rule objects with multiple definition styles, lightweight architecture, and integration options.

Composite RulesEasy RulesJava
0 likes · 18 min read
Replace if…else with a Lightweight Rule Engine: Introducing Easy Rules
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 2, 2026 · Artificial Intelligence

CodeGraph: Open‑Source AI Tool for One‑Click Project Insight—Essential for Large Codebases

CodeGraph is an open‑source AI‑powered code‑graph tool that builds a local SQLite knowledge graph of all symbols, calls and dependencies across more than 20 languages, enabling agents to retrieve complete call chains and impact analysis with a single query, dramatically cutting traversal overhead for large projects.

AI AgentsCLICodeGraph
0 likes · 13 min read
CodeGraph: Open‑Source AI Tool for One‑Click Project Insight—Essential for Large Codebases
Xiaolin Talks Programming
Xiaolin Talks Programming
Jul 1, 2026 · Backend Development

High-Fidelity Integration Testing: Spring Boot & Testcontainers in Production Pipelines

This article shares practical experience migrating Spring Boot integration tests to Testcontainers, covering database migration with Flyway, test data factories, multi-container networking, performance optimization via container reuse and parallel execution, CI pipeline integration, and team conventions for test layering and mutation testing.

CI/CDDatabase TestingDocker
0 likes · 19 min read
High-Fidelity Integration Testing: Spring Boot & Testcontainers in Production Pipelines
Java Tech Enthusiast
Java Tech Enthusiast
Jun 30, 2026 · Backend Development

Spring Boot 4.1.0 Released: Official gRPC Support Boosts Java Microservices

Spring Boot 4.1.0 introduces official gRPC support, unified Jackson configuration, HTTP client SSRF protection, enhanced observability with OpenTelemetry, and flexible Log4j file‑rotation strategies, while the roadmap confirms a one‑year lifecycle for each version and signals the shift to the 4.x era for Java microservices.

JacksonJavaSSRF
0 likes · 8 min read
Spring Boot 4.1.0 Released: Official gRPC Support Boosts Java Microservices
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 30, 2026 · Backend Development

Beyond @Value: Two painless ways to inject properties early in Spring Boot

This article explains why @Value, @ConfigurationProperties, and Environment cannot be used directly in BeanFactoryPostProcessor, and demonstrates two practical techniques—using Environment#getProperty and Binder with @ConfigurationProperties—to inject configuration properties without pain in early Spring Boot initialization.

@ConfigurationPropertiesBeanFactoryPostProcessorBinder
0 likes · 6 min read
Beyond @Value: Two painless ways to inject properties early in Spring Boot
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 30, 2026 · Databases

Zero-Downtime Database Evolution: Flyway + Spring Boot Expand/Migrate/Contract Pattern

This article details a production-verified zero-downtime database migration strategy using Spring Boot and Flyway, covering why DDL causes outages, Flyway configuration best practices, the expand-migrate-contract pattern for smooth schema changes, script writing and rollback techniques, Kubernetes deployment coordination, monitoring with circuit breakers, and a post-mortem checklist.

DDLFlywayKubernetes
0 likes · 18 min read
Zero-Downtime Database Evolution: Flyway + Spring Boot Expand/Migrate/Contract Pattern
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 30, 2026 · Backend Development

Zero‑Intrusion Dynamic Enhancements for Spring Boot RestClient

The article explains how to eliminate boilerplate when using Spring Boot 3.5.0 RestClient by introducing two custom annotations, @ClientEnhance and @ClientConfig, together with an auto‑configuration class that injects logging interceptors and configurable timeouts into selected RestClient.Builder beans, enabling a non‑intrusive, declarative enhancement.

AutoConfigurationCustom AnnotationJava
0 likes · 8 min read
Zero‑Intrusion Dynamic Enhancements for Spring Boot RestClient
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 29, 2026 · Backend Development

4 Advanced Techniques for Designing Spring Boot Controllers

This article examines four common shortcomings in typical Spring Boot controller APIs—lack of idempotency, misuse of PUT for partial updates, missing optimistic concurrency control, and always returning full objects—and demonstrates concrete solutions using Idempotency-Key headers, PATCH with JsonMergePatch, ETag handling, and sparse field selection.

ControllerETagSparse fields
0 likes · 12 min read
4 Advanced Techniques for Designing Spring Boot Controllers
Java Tech Workshop
Java Tech Workshop
Jun 29, 2026 · Backend Development

Zero‑Intrusion AOP for Global API Logging in Spring Boot

The article explains how to implement a zero‑intrusion, AOP‑based global API logging solution for Spring Boot applications, addressing common issues of manual logging such as code clutter, missing logs, inconsistent formats, privacy leaks, and performance overhead by using repeatable request wrappers, configurable filters, structured DTOs, asynchronous persistence, and comprehensive trace and desensitization utilities.

AOPAPI LoggingRequest Wrapper
0 likes · 19 min read
Zero‑Intrusion AOP for Global API Logging in Spring Boot
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 29, 2026 · Backend Development

Spring Boot Feature Toggles & Canary Releases: Decoupling Deployment from Release for Safe Microservice Iteration

This article details a production-grade system for implementing dynamic feature toggles and canary releases in Spring Boot, covering architecture design, config-center integration with Nacos/Apollo, code patterns using AOP and strategy routing, traffic-splitting algorithms with user stickiness, A/B test metrics collection, and toggle lifecycle governance with hard TTL cleanup.

NacosSpELSpring Boot
0 likes · 20 min read
Spring Boot Feature Toggles & Canary Releases: Decoupling Deployment from Release for Safe Microservice Iteration
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 28, 2026 · Backend Development

9 Spring Boot API Performance Tricks to Squeeze Every Millisecond

This article presents nine practical techniques—async processing, caching, database query tuning, response compression, WebFlux reactive endpoints, logging reduction, index optimization, connection‑pool configuration, and CDN static‑asset delivery—to dramatically cut Spring Boot API latency and boost throughput in high‑concurrency environments.

API performanceCachingCompression
0 likes · 11 min read
9 Spring Boot API Performance Tricks to Squeeze Every Millisecond
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 27, 2026 · Backend Development

Spring Boot WebSocket Clustering: State Decoupling & Routing at Scale

This article details production-hardened patterns for scaling Spring Boot WebSocket clusters, covering protocol trade-offs, STOMP heartbeat alignment, Redis-based routing, offline message compensation, reconnection backoff, idempotency layers, Undertow tuning, memory leak diagnostics, Nginx proxy pitfalls, split-brain defense, and graceful shutdown — all grounded in real incidents.

ClusteringNginxRedis Pub/Sub
0 likes · 21 min read
Spring Boot WebSocket Clustering: State Decoupling & Routing at Scale
Java Architect Essentials
Java Architect Essentials
Jun 26, 2026 · Backend Development

7 Proven Techniques to Slash Spring Boot Startup Time by Up to 70%

This article walks through seven concrete Spring Boot startup optimizations—including lazy initialization, precise component scanning, JVM tuning, auto‑configuration slimming, class‑loading reduction, delayed database connections, and AOT/native compilation—showing real‑world benchmarks that cut launch times by around 70%.

AOTAuto-configurationJVM Tuning
0 likes · 9 min read
7 Proven Techniques to Slash Spring Boot Startup Time by Up to 70%
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 26, 2026 · Backend Development

Multi-Tenant SaaS in Production: Spring Boot Dynamic Data Source & Row-Level Isolation

This article shares production-hardened patterns for multi-tenant SaaS using Spring Boot, covering isolation mode selection, ThreadLocal-based context propagation, MyBatis-Plus SQL interception for automatic tenant_id injection, Feign and async thread propagation, HikariCP tuning, composite indexing, cursor pagination, and real-world pitfalls like interceptor ordering, transaction-bound data source switching, and ThreadLocal leakage.

Dynamic Data SourceFeignMyBatis-Plus
0 likes · 19 min read
Multi-Tenant SaaS in Production: Spring Boot Dynamic Data Source & Row-Level Isolation
LuTiao Programming
LuTiao Programming
Jun 25, 2026 · Backend Development

GitHub Copilot’s New Deep‑Dive Java PR Review: Beyond a Quick Diff Glance

GitHub Copilot Code Review now uses grep, rg, glob and view to actively explore related files in Java pull requests, shifting AI code review from merely commenting on changed lines to investigating the broader impact on transactions, caches, messaging, database queries and system compatibility.

AI code reviewGitHub CopilotJava
0 likes · 20 min read
GitHub Copilot’s New Deep‑Dive Java PR Review: Beyond a Quick Diff Glance
LuTiao Programming
LuTiao Programming
Jun 25, 2026 · Backend Development

JetBrains Junie Goes GA: AI Moves Beyond Code Generation to Control the Debugger

JetBrains has promoted its AI coding agent Junie from beta to general availability, expanding its capabilities from generating Java code to directly operating IntelliJ IDEA’s debugger, planning tasks, accessing project indexes, build configurations, tests, and databases, thereby shifting AI‑assisted troubleshooting from static code analysis to runtime evidence collection.

AI codingIntelliJ IDEAJava
0 likes · 20 min read
JetBrains Junie Goes GA: AI Moves Beyond Code Generation to Control the Debugger
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 25, 2026 · Backend Development

Four Ways to Fix Spring Boot JSON Serialization ‘no Session’ Error for Associated Entities

This article presents four practical solutions for the Spring Boot 3.5.0 “Could not write JSON: failed to lazily initialize a collection… no Session” error that occurs when serializing bidirectional one-to-many relationships, covering @JsonIgnore, JPQL fetch joins, enabling OpenEntityManagerInView, and using the Jackson Hibernate6 module, with code examples and results.

JPAJSONJackson
0 likes · 7 min read
Four Ways to Fix Spring Boot JSON Serialization ‘no Session’ Error for Associated Entities
java1234
java1234
Jun 25, 2026 · Backend Development

Spring Boot 4.1.0 Released: gRPC Auto‑Config, SSRF‑Safe HTTP Client, Lazy JDBC, @RedisListener and OpenTelemetry Enhancements

Spring Boot 4.1.0, launched on June 10, 2026, adds built‑in gRPC server/client auto‑configuration, an InetAddressFilter to block SSRF attacks, lazy JDBC connection fetching, automatic @RedisListener registration, unified Jackson settings, OpenTelemetry improvements and several other developer‑experience upgrades, all illustrated with runnable demos and migration tips.

@RedisListenerOpenTelemetrySSRF protection
0 likes · 13 min read
Spring Boot 4.1.0 Released: gRPC Auto‑Config, SSRF‑Safe HTTP Client, Lazy JDBC, @RedisListener and OpenTelemetry Enhancements
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 25, 2026 · Backend Development

Building a Production-Grade Search Engine with Spring Boot & Elasticsearch

This article details how to replace MySQL complex queries with Elasticsearch in production, covering data sync via Canal/Kafka, mapping design with IK analyzer, Spring Data ES query builders, deep pagination with Search After, and consistency guarantees through reconciliation and dead-letter queues.

Consistency PatternsDeep PaginationElasticsearch
0 likes · 21 min read
Building a Production-Grade Search Engine with Spring Boot & Elasticsearch
Linyb Geek Road
Linyb Geek Road
Jun 25, 2026 · Backend Development

8 Hard‑Earned Rules for Using Spring @Transactional Correctly

Drawing on a decade of production experience, the article presents eight concrete rules for Spring @Transactional—covering transaction duration, proxy limitations, rollback settings, exception handling, read‑only flags, method visibility, bean separation for retries, and logging—to prevent common bugs and ensure reliable database operations.

@TransactionalBest PracticesJava
0 likes · 12 min read
8 Hard‑Earned Rules for Using Spring @Transactional Correctly
Cloud Architecture
Cloud Architecture
Jun 24, 2026 · Backend Development

Spring Boot Alipay Integration: A Production-Ready Solution for High Concurrency and Financial Consistency

This article explains how to build a production‑grade Alipay payment subsystem with Spring Boot that goes beyond simple API calls, covering asynchronous flow, idempotent notification handling, state‑machine design, outbox event delivery, high‑concurrency safeguards, and end‑to‑end reconciliation.

AlipayOutboxPayment Integration
0 likes · 32 min read
Spring Boot Alipay Integration: A Production-Ready Solution for High Concurrency and Financial Consistency
Java Architect Handbook
Java Architect Handbook
Jun 24, 2026 · Backend Development

Auto‑Cancel Unpaid Orders After 30 Minutes with RabbitMQ: TTL + DLX vs Delayed Message Plugin

The article explains two ways to implement a 30‑minute order auto‑cancellation in RabbitMQ—using the classic TTL + dead‑letter exchange pattern (with its head‑blocking pitfall) and the newer delayed‑message‑exchange plugin—provides Spring Boot configuration examples, compares their trade‑offs, and offers interview tips on when to choose each solution.

Delayed Message PluginRabbitMQSpring Boot
0 likes · 12 min read
Auto‑Cancel Unpaid Orders After 30 Minutes with RabbitMQ: TTL + DLX vs Delayed Message Plugin
Java Tech Workshop
Java Tech Workshop
Jun 24, 2026 · Backend Development

Mastering Spring AOP: All Four Types of Advice Explained

Spring AOP provides five distinct advice types—@Before, @AfterReturning, @AfterThrowing, @After, and @Around—each with specific execution timing; this guide explains their purposes, execution order, common pitfalls, and offers a complete SpringBoot example with code, Maven setup, and logging demonstrations.

AOPBackendJava
0 likes · 13 min read
Mastering Spring AOP: All Four Types of Advice Explained
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 24, 2026 · Backend Development

Enterprise Audit Architecture: Full-Chain Logging & Dynamic Data Masking in Spring Boot

This article details a production-grade Spring Boot audit architecture covering full-chain traceability, async log persistence, dynamic data masking via Jackson serializers, tamper-proofing with hash chains, and hot/cold log tiering, with concrete code examples and performance tuning insights from financial and government deployments.

Async ProcessingAudit LoggingJackson
0 likes · 22 min read
Enterprise Audit Architecture: Full-Chain Logging & Dynamic Data Masking in Spring Boot
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 24, 2026 · Backend Development

Ditch Traditional JSON Parsing: Boost Spring Boot API Performance by 30×

A four‑month investigation revealed that Jackson’s default object‑mapper consumed over 60% of CPU time during order‑submission requests, causing 900 ms latency; switching to Jackson’s streaming API reduced average response time from 912 ms to 28 ms, cut GC pauses, and increased throughput eight‑fold, while introducing readability and validation trade‑offs.

JSON parsingJacksonJava
0 likes · 8 min read
Ditch Traditional JSON Parsing: Boost Spring Boot API Performance by 30×
ITPUB
ITPUB
Jun 23, 2026 · Backend Development

Why AI Coding Feels Much Slower in Java and How Five Harness Techniques Fix It

The article explains why AI‑assisted coding loops that run instantly on lightweight projects stall in Java microservices, and presents five concrete harness engineering principles—dependency inversion, zero‑intrusion profile isolation, CLI tool integration, CLAUDE.md documentation, and verification scripts—to create a fully local, AI‑friendly development environment.

AI codingCLIDependency Injection
0 likes · 23 min read
Why AI Coding Feels Much Slower in Java and How Five Harness Techniques Fix It
IT Services Circle
IT Services Circle
Jun 23, 2026 · Operations

Automating Business Login Checks with Playwright: Eliminate Manual Verification

When dozens of services rely on a shared SSO, a simple ping or HTTP 200 does not guarantee users can log in; this article compares common monitoring approaches, explains why a simulated‑login probe using Playwright is chosen, and details the design, implementation, and Linux deployment of the sys‑monitor tool that automatically validates the full login chain and alerts on failures.

Linux DeploymentLogin MonitoringPlaywright
0 likes · 11 min read
Automating Business Login Checks with Playwright: Eliminate Manual Verification
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 23, 2026 · Backend Development

One Bad Log Can Halve Spring Boot Throughput – How to Log Without Losing Performance

The article explains why effective logging is crucial for Java applications, compares proper and improper logging practices with SLF4J and Logback, and provides fourteen concrete best‑practice guidelines—including correct logger setup, level usage, placeholders, asynchronous and structured logging—to avoid performance degradation and security risks.

JavaLogbackSpring Boot
0 likes · 14 min read
One Bad Log Can Halve Spring Boot Throughput – How to Log Without Losing Performance
Java Tech Workshop
Java Tech Workshop
Jun 23, 2026 · Backend Development

Request vs Session Scope: Usage Scenarios and Thread‑Safety Pitfalls in Java Web

Understanding the lifecycle, scope, and thread characteristics of HttpServletRequest and HttpSession reveals common misuse that leads to data corruption, login state errors, and lost cart data; the article explains core differences, proper use cases, real‑world bug examples, and practical solutions such as read‑only policies, synchronization, thread‑safe collections, and Redis‑based session storage.

JavaRequest ScopeSession Scope
0 likes · 14 min read
Request vs Session Scope: Usage Scenarios and Thread‑Safety Pitfalls in Java Web
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 23, 2026 · Backend Development

Stop Writing Manual if‑else: Master Spring Boot Partial Updates with @JsonMerge

This article explains how to avoid null‑overwrites during partial updates in Spring Boot by using Jackson's @JsonMerge annotation, demonstrates handling of nested objects and null values with @JsonSetter, and shows how to create a custom @JsonMergePatch argument resolver for clean controller code.

@JsonMergeArgument ResolverJackson
0 likes · 9 min read
Stop Writing Manual if‑else: Master Spring Boot Partial Updates with @JsonMerge
LuTiao Programming
LuTiao Programming
Jun 22, 2026 · Backend Development

Claude Agent in IntelliJ IDEA Public Beta: How Java Development Is Changing

The article analyzes the public beta of Claude Agent in IntelliJ IDEA, explaining how its deep IDE integration transforms Java developers' workflow from manual code editing to AI‑driven multi‑step task execution, while highlighting new risks, team‑level usage, and practical start‑up steps.

AI AgentClaudeGitHub Copilot
0 likes · 16 min read
Claude Agent in IntelliJ IDEA Public Beta: How Java Development Is Changing
Coder Trainee
Coder Trainee
Jun 22, 2026 · Artificial Intelligence

Building Java AI Agents with LangChain4j: A Hands‑On Guide

This article explains why LangChain4j is needed for advanced Java AI agents, compares its capabilities with Spring AI, walks through project setup, configuration, defining tools and memory, assembling the agent, and demonstrates a complete smart‑customer service example with testing commands.

AI AgentsChatMemoryJava
0 likes · 10 min read
Building Java AI Agents with LangChain4j: A Hands‑On Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 22, 2026 · Backend Development

Why Prefer @Bean Over @Component? Avoid Critical Spring Boot Pitfalls

The article explains the fundamental differences between @Component and @Bean in Spring Boot 3.5.0, demonstrates how @Bean provides finer control, solves five common configuration problems, and reveals a subtle proxy‑related bug that causes multiple bean instances when @Component is misused on configuration classes.

@BeanComponentConfiguration
0 likes · 8 min read
Why Prefer @Bean Over @Component? Avoid Critical Spring Boot Pitfalls
Java Tech Enthusiast
Java Tech Enthusiast
Jun 21, 2026 · Backend Development

Spring Boot 4.1.0: Deep Dive into 8 Must‑Know Production Features

Spring Boot 4.1.0, released on June 10, 2026, adds official gRPC support, built‑in SSRF protection, OpenTelemetry enhancements, lazy datasource initialization, async context propagation, Kotlin 2.3 compatibility, Log4j file‑rotation, and numerous build‑tool and dependency upgrades, while providing a detailed migration guide for production environments.

Build ToolsKotlinLazy DataSource
0 likes · 17 min read
Spring Boot 4.1.0: Deep Dive into 8 Must‑Know Production Features
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 21, 2026 · Backend Development

Spring Boot + Yauaa: Ultra‑Precise Parsing of Client Device, OS, and Browser Info

This article walks through using the Yauaa library in Spring Boot 3.5.0 to extract detailed client‑side information—device class, operating system, and browser—from the User‑Agent header, covering basic bean setup, advanced cache configuration, field selection, and device‑based routing examples.

Cache ConfigurationDevice DetectionJava
0 likes · 8 min read
Spring Boot + Yauaa: Ultra‑Precise Parsing of Client Device, OS, and Browser Info
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 21, 2026 · Backend Development

Beyond Vibe Coding: A Deep Dive into OpenSpec Spec‑Driven Development

This article explains why Vibe Coding reaches its limits for large projects, introduces Spec‑Driven Development with OpenSpec, walks through installing the tool, using its opsx commands, creating specification documents, applying code generation, and archiving the results in a Spring Boot 3.5.0 application.

AI-assisted codingOpenSpecOpsx commands
0 likes · 12 min read
Beyond Vibe Coding: A Deep Dive into OpenSpec Spec‑Driven Development
LuTiao Programming
LuTiao Programming
Jun 20, 2026 · Backend Development

From Prompt to Loop Engineering: How Java Development Is Evolving

The article examines the shift from manual Prompt Engineering to automated Loop Engineering for Java projects, detailing how defining goals, boundaries, verification steps, and stop conditions enables AI agents to iteratively fix bugs, add tests, and upgrade dependencies while controlling costs and risks.

AI codingLoop EngineeringSpring Boot
0 likes · 17 min read
From Prompt to Loop Engineering: How Java Development Is Evolving
Cloud Architecture
Cloud Architecture
Jun 20, 2026 · Backend Development

Beyond Nearby Users: Building a Millisecond‑Level Real‑Time Dispatch System with GeoHash and Spring Boot

This article dissects the architecture, algorithms, and production practices behind a millisecond‑level real‑time dispatch system that uses GeoHash for spatial indexing, Spring Boot for service orchestration, Redis GEO for fast candidate selection, and a series of scoring, atomic reservation, and observability techniques to handle millions of riders under high concurrency.

GeoHashHigh ConcurrencyRedis Geo
0 likes · 36 min read
Beyond Nearby Users: Building a Millisecond‑Level Real‑Time Dispatch System with GeoHash and Spring Boot
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 20, 2026 · Backend Development

Four Advanced Spring Boot Solutions to Eliminate @JsonIgnore and Resolve JSON Recursion

When bidirectional JPA entities cause infinite JSON recursion in Spring Boot, the article explains why @JsonIgnore is suboptimal and demonstrates four advanced alternatives—@JsonIgnoreProperties, @JsonManagedReference/@JsonBackReference, the Jackson Hibernate module, and @JsonIdentityInfo—each with code samples and runtime results.

@JsonIgnorePropertiesHibernateJPA
0 likes · 7 min read
Four Advanced Spring Boot Solutions to Eliminate @JsonIgnore and Resolve JSON Recursion
IoT Full-Stack Technology
IoT Full-Stack Technology
Jun 20, 2026 · Backend Development

A Minimalist HTTP Client: One‑Line Requests with OKHttpUtil

OKHttpUtil wraps Square's OkHttp library to provide a lightweight, easy‑to‑use HTTP client for Java and Kotlin, automatically handling HTTP/HTTPS detection, cookies, redirects, gzip, proxy and User‑Agent configuration, with Maven coordinates, Spring Boot starter support and concise code examples for GET, POST, file upload, download and custom API wrappers.

API wrapperHTTP ClientJava
0 likes · 10 min read
A Minimalist HTTP Client: One‑Line Requests with OKHttpUtil
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 20, 2026 · Backend Development

Spring Boot Config Mastery: Multi-Env, Encryption & Nacos Hot Reload Pitfalls

This article provides a comprehensive guide to Spring Boot configuration management, covering profile-based environment isolation, configuration priority hierarchy, Jasypt encryption with AES, Nacos integration for dynamic configuration, @RefreshScope internals, common hot-reload pitfalls (connection pools, @Value fields, stateful beans), and governance practices like GitOps, auditing, and canary releases.

Configuration GovernanceGitOpsHot Reload
0 likes · 19 min read
Spring Boot Config Mastery: Multi-Env, Encryption & Nacos Hot Reload Pitfalls
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 20, 2026 · Backend Development

No Third‑Party Dependencies: Build a Custom Spring Boot Dynamic Decryption Component

The article explains how to protect database passwords and API keys in Spring Boot 3.5.0 by implementing a lightweight, third‑party‑free dynamic decryption component that encrypts values with AES, stores them with a {cipher} prefix, and decrypts them at pre‑refresh using a custom ApplicationContextInitializer.

AESConfiguration SecurityDynamic Decryption
0 likes · 8 min read
No Third‑Party Dependencies: Build a Custom Spring Boot Dynamic Decryption Component
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 19, 2026 · Backend Development

Java Pooling Under High Concurrency: Resource Reuse and Performance Optimization

The article explains Java pooling techniques for high‑concurrency scenarios, introduces Apache Commons Pool 2, demonstrates how to configure dependencies, implement a PooledObjectFactory, create custom eviction policies and statistics, and shows a complete runnable example that highlights resource reuse and performance gains.

JavaPerformance OptimizationSpring Boot
0 likes · 8 min read
Java Pooling Under High Concurrency: Resource Reuse and Performance Optimization
Java Architect Handbook
Java Architect Handbook
Jun 19, 2026 · Backend Development

What Is a RabbitMQ Dead Letter Queue? Interview Guide

This article explains the concept of RabbitMQ dead‑letter queues, the three conditions that turn a message into a dead letter, how to configure DLX and routing keys in Spring Boot, common pitfalls, a classic order‑timeout use case, and typical interview follow‑up questions.

Java InterviewRabbitMQSpring Boot
0 likes · 11 min read
What Is a RabbitMQ Dead Letter Queue? Interview Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 19, 2026 · Artificial Intelligence

How Spring AI’s Dynamic Tool Discovery Cuts Token Usage by 34%‑64%

The article explains how Spring AI’s recursive advisors enable dynamic tool discovery, replacing the traditional all‑tools‑in‑prompt approach, thereby reducing token consumption by 34%‑64% while preserving access to hundreds of tools, and provides benchmark data, code examples, and configurable search strategies.

Dynamic Tool DiscoveryJavaLLM
0 likes · 11 min read
How Spring AI’s Dynamic Tool Discovery Cuts Token Usage by 34%‑64%
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 19, 2026 · Backend Development

Spring Boot Multi-Level Cache: Caffeine + Redis Design with Consistency & 78K QPS

This article details a production-grade Spring Boot multi-level caching architecture using Caffeine L1 and Redis L2 to solve database IO bottlenecks in read-heavy scenarios, covering consistency solutions via MQ async with idempotency, defenses against cache penetration, breakdown, and avalanche, and load test results showing 78K QPS with 5.2ms P99 latency.

CaffeineDistributed lockingLoad Testing
0 likes · 19 min read
Spring Boot Multi-Level Cache: Caffeine + Redis Design with Consistency & 78K QPS
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 18, 2026 · Backend Development

Avoid Hidden Performance Landmines: 7 Common Spring Boot Production Pitfalls

The article identifies seven common performance killers in Spring Boot production—N+1 queries, unbounded thread pools, excessive logging, oversized response bodies, missing indexes, synchronous external API calls, and serial API invocations—and provides concrete code‑level solutions such as eager fetching, custom thread pools, lazy logging, DTOs, index creation, timeout configuration, and CompletableFuture parallelism.

CompletableFutureDTON+1 query
0 likes · 10 min read
Avoid Hidden Performance Landmines: 7 Common Spring Boot Production Pitfalls
liandk
liandk
Jun 18, 2026 · Backend Development

How to Set Up the Development Environment for the Litemall Micro‑Mall Project

This guide walks you through installing IntelliJ IDEA, VS Code, and the WeChat Developer Tool, configuring the MySQL connection to a cloud server, loading the Maven backend project, launching the Spring Boot APIs, and running the Vue admin, Vue mobile, and WeChat mini‑program front‑ends while verifying end‑to‑end connectivity.

IntelliJ IDEALitemallSpring Boot
0 likes · 10 min read
How to Set Up the Development Environment for the Litemall Micro‑Mall Project
Architect's Tech Stack
Architect's Tech Stack
Jun 18, 2026 · Backend Development

Why Ditch Spring AI? 3 Java AI Frameworks That Supercharge Spring Boot

The article compares three Java‑centric AI frameworks—LangChain4j, Spring AI Alibaba, and LangGraph4j—showing how each integrates with Spring Boot to turn ordinary services into stateful, workflow‑driven AI agents, and offers guidance on picking the right tool for different project needs.

Agent FrameworkJava AILangChain4j
0 likes · 11 min read
Why Ditch Spring AI? 3 Java AI Frameworks That Supercharge Spring Boot
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 18, 2026 · Backend Development

Spring Boot Scheduled Tasks: Dynamic Cron & Cluster Duplicate Prevention

This article explores production-grade Spring Boot scheduled tasks, covering dynamic Cron hot-reloading via configuration listeners, cluster duplicate prevention using distributed locks, framework selection between Quartz and XXL-JOB, data sharding strategies, observability, timeout handling, and retry mechanisms with dead-letter queues.

Cluster Duplicate PreventionDynamic CronSpring Boot
0 likes · 18 min read
Spring Boot Scheduled Tasks: Dynamic Cron & Cluster Duplicate Prevention
LuTiao Programming
LuTiao Programming
Jun 17, 2026 · Backend Development

Why Salesforce’s $3.6B AI Customer Service Bet Highlights the Real Opportunity for Java Back‑End Developers

The article explains how Salesforce’s $3.6 billion acquisition of Fin signals a shift from simple chatbot answers to AI agents that execute end‑to‑end business actions, and why Java/Spring Boot developers must expose secure, auditable services rather than merely wrapping large‑model APIs.

AI Agent ArchitectureAI Customer ServiceJava
0 likes · 21 min read
Why Salesforce’s $3.6B AI Customer Service Bet Highlights the Real Opportunity for Java Back‑End Developers
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 17, 2026 · Backend Development

Six Powerful Spring Boot JDBC Data Access Techniques

This article introduces six Spring Boot approaches for JDBC data access—including JdbcTemplate, NamedParameterJdbcTemplate, JdbcClient, SimpleJdbcInsert/Call, Spring Data JDBC repositories, and JdbcAggregateTemplate—each illustrated with code samples and usage notes for Spring Boot 3.5.0.

JDBCJdbcAggregateTemplateJdbcClient
0 likes · 9 min read
Six Powerful Spring Boot JDBC Data Access Techniques
CodeSmart Hoops
CodeSmart Hoops
Jun 17, 2026 · Backend Development

Hands‑On Unit Testing of MyBatis‑Plus with Spring Boot 3

This guide demonstrates how to set up a Spring Boot 3.x project with MyBatis‑Plus, configure Maven dependencies, H2 database, and JPA, then write comprehensive JUnit 5 tests covering CRUD, LambdaQueryWrapper queries, pagination, logical deletion, and automatic timestamp filling, with step‑by‑step commands to run the tests.

JUnit 5JavaMyBatis-Plus
0 likes · 20 min read
Hands‑On Unit Testing of MyBatis‑Plus with Spring Boot 3
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 17, 2026 · Backend Development

Production-Grade Large File Upload in Spring Boot: Chunking, Resume & OSS Direct Transfer

This article details a production-ready Spring Boot large file upload architecture covering chunked protocol design, async server-side merging with zero-copy FileChannel, OSS/MinIO direct upload via presigned URLs, resumable transfer with Redis chunk tracking, and security hardening including magic-number validation and rate limiting.

RedisSpring Bootchunked upload
0 likes · 18 min read
Production-Grade Large File Upload in Spring Boot: Chunking, Resume & OSS Direct Transfer
LuTiao Programming
LuTiao Programming
Jun 16, 2026 · Backend Development

Why AI‑Generated Java Code Is Riskier Without a Gatekeeper

As AI coding tools like Claude Code, Cursor and Codex can automatically edit multiple files, run commands, and modify production configurations in Spring Boot projects, the real danger lies in the lack of automated gatekeeping that enforces engineering rules and prevents unintended side effects.

AI codingCode safetyDevOps
0 likes · 18 min read
Why AI‑Generated Java Code Is Riskier Without a Gatekeeper
Su San Talks Tech
Su San Talks Tech
Jun 16, 2026 · Backend Development

Spring Boot 4.1.0 Released – 8 Core New Features Every Developer Should Know

Spring Boot 4.1.0, launched on June 10 2026, builds on Spring Framework 7.0.x and adds eight production‑grade features—including official gRPC support, built‑in SSRF protection, OpenTelemetry enhancements, lazy datasource connections, Kotlin 2.3 support, and upgraded logging—while also detailing migration steps, deprecated APIs, and best‑fit scenarios.

KotlinLazy DataSourceOpenTelemetry
0 likes · 17 min read
Spring Boot 4.1.0 Released – 8 Core New Features Every Developer Should Know
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 16, 2026 · Backend Development

Stop Overusing ‘new’: Four Design Patterns That Separate Junior from Senior Developers

The article explains why indiscriminate use of the Java new operator leads to duplicated configuration, hidden complexity, and performance problems, and demonstrates how Factory, Builder, Object‑Pool, and Prototype patterns—illustrated with Spring Boot 3.5.0 code—provide clean, maintainable alternatives that distinguish junior from senior developers.

Builder PatternDesign PatternsFactory Pattern
0 likes · 19 min read
Stop Overusing ‘new’: Four Design Patterns That Separate Junior from Senior Developers
Xiaolin Talks Programming
Xiaolin Talks Programming
Jun 16, 2026 · Backend Development

Spring Boot @Async in Production: From Default Pitfalls to Thread Pool Governance

This article details Spring Boot @Async production pitfalls including unbounded thread creation, context loss, swallowed exceptions, and OOM risks, then provides concrete solutions: explicit ThreadPoolTaskExecutor configuration with bounded queues, TaskDecorator for MDC/TraceId/SecurityContext propagation, global exception handling, CompletableFuture orchestration without blocking, and monitoring with dynamic tuning to prevent thread leaks and OOM.

@AsyncCompletableFutureJava concurrency
0 likes · 19 min read
Spring Boot @Async in Production: From Default Pitfalls to Thread Pool Governance
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 16, 2026 · Backend Development

Avoid OOM: Stream Massive Excel Files with Minimal Memory Using Excel‑Streaming‑Reader

This article explains how to prevent out‑of‑memory errors when importing huge Excel files in Java by using the open‑source excel‑streaming‑reader library, showing Maven setup, streaming code examples, memory‑saving configurations for shared strings and comments, and tips for handling extremely large workbooks.

Apache POIExcelJava
0 likes · 8 min read
Avoid OOM: Stream Massive Excel Files with Minimal Memory Using Excel‑Streaming‑Reader
Cloud Architecture
Cloud Architecture
Jun 15, 2026 · Backend Development

Trillion‑Message Engine Showdown: RabbitMQ vs Kafka Architecture, Performance and Cloud‑Native Pitfalls

An experienced architect compares RabbitMQ and Kafka across core protocols, storage, replication, consumption semantics, and real‑world production designs, offering Java 17/Spring Boot code, cloud‑native deployment tips, observability, and a decision framework that matches messaging patterns to business requirements.

Event StreamingJavaKafka
0 likes · 45 min read
Trillion‑Message Engine Showdown: RabbitMQ vs Kafka Architecture, Performance and Cloud‑Native Pitfalls
Top Architect
Top Architect
Jun 15, 2026 · Backend Development

How to Convert DOCX to PDF in Spring Boot Using docx4j (Open‑Source Solution)

The article explains how to implement a pure‑Java DOCX‑to‑PDF conversion service in Spring Boot with docx4j, compares it against alternatives such as Apache POI+iText, LibreOffice+JODConverter and Aspose.Words, and provides step‑by‑step code for Maven dependencies, a utility class with font mapping to avoid Chinese garbling, a controller endpoint, and platform‑specific font‑installation fixes for Windows and Linux.

JavaMavenPDF conversion
0 likes · 12 min read
How to Convert DOCX to PDF in Spring Boot Using docx4j (Open‑Source Solution)
Java Tech Enthusiast
Java Tech Enthusiast
Jun 15, 2026 · Backend Development

Spring Boot Interceptor vs Filter: 5 Pitfalls and Choosing the Right One for Login Checks

Spring Boot’s Filter and Interceptor can both intercept requests, but developers often misuse them; this article explains five frequent traps—null autowiring in Filters, execution order mistakes, @Value timing issues in Interceptors, Swagger blocking, and exception handling—offering concrete fixes and a decision guide.

InterceptorJavaLogin Validation
0 likes · 13 min read
Spring Boot Interceptor vs Filter: 5 Pitfalls and Choosing the Right One for Login Checks
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 15, 2026 · Backend Development

14 Real-World Scenarios Highlighting Core Distributed Caching Issues in Spring Boot

This article presents fourteen practical scenarios covering the design, pitfalls, strategies, and implementation details of distributed caching in Spring Boot, including cache breakdown prevention, write‑through vs. write‑behind, eviction policies, negative caching, secondary caches, cache‑aside pattern, warming, monitoring, consistency, and custom key generation, all illustrated with concrete code examples.

Cache EvictionJavaRedis
0 likes · 17 min read
14 Real-World Scenarios Highlighting Core Distributed Caching Issues in Spring Boot
IoT Full-Stack Technology
IoT Full-Stack Technology
Jun 15, 2026 · Backend Development

Quickly Secure Spring Boot APIs with RSA Encryption

This article walks through the fundamentals of RSA encryption, illustrates two communication scenarios, and provides a step‑by‑step guide to add RSA‑based request/response encryption to a Spring Boot project—including Maven setup, annotation usage, key configuration, front‑end JavaScript encryption, testing, and common pitfalls.

API EncryptionBackendJSEncrypt
0 likes · 11 min read
Quickly Secure Spring Boot APIs with RSA Encryption
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jun 15, 2026 · Backend Development

Zero‑Intrusion Spring Boot Unified Response: 4 Low‑Level Solutions

The article explains why inconsistent API responses hurt front‑end/back‑end projects, introduces a unified result object, and demonstrates four zero‑intrusion, low‑level techniques—custom ResponseBodyAdvice, return‑value handler, HandlerMethod adapter, and message converter—each with code samples and verification screenshots.

Custom Message ConverterHandlerMethodReturnValueHandlerJava
0 likes · 9 min read
Zero‑Intrusion Spring Boot Unified Response: 4 Low‑Level Solutions
Architect's Tech Stack
Architect's Tech Stack
Jun 14, 2026 · Backend Development

Why Quarkus Can Outrun Spring Boot: Launching Apps in Under 0.002 Seconds

The article compares Spring Boot and Quarkus, explaining how Quarkus’s build‑time optimizations, native image support, and container‑first design dramatically reduce startup time and memory usage, while also discussing development experience, extension mechanisms, and the trade‑offs involved in adopting the framework.

JavaKubernetesMicroProfile
0 likes · 14 min read
Why Quarkus Can Outrun Spring Boot: Launching Apps in Under 0.002 Seconds
Cloud Architecture
Cloud Architecture
Jun 14, 2026 · Backend Development

RabbitMQ Exchanges Mastery: Routing Basics to Scalable High‑Concurrency Design

This guide explains why the Exchange is the routing core of RabbitMQ, details its five-layer capabilities, shows how to design reliable, scalable topologies with direct, topic, fanout and headers exchanges, and provides Spring Boot code examples for production‑grade routing, retries, dead‑letter handling and monitoring.

ExchangeOutboxQuorum Queue
0 likes · 46 min read
RabbitMQ Exchanges Mastery: Routing Basics to Scalable High‑Concurrency Design
Three Knives
Three Knives
Jun 14, 2026 · Backend Development

Is Spring Boot’s Embedded Tomcat a Step Forward or Backward?

The article argues that while Spring Boot’s embedded Tomcat simplifies deployment, it tightly couples the web layer with business code and inflates JAR size, whereas the lightweight smart‑servlet framework offers a modular 1.3 MB alternative with clear boundaries, fast cold start, full Servlet 6.1 compliance, and tangible benefits for migration, domestic adaptation, and operations troubleshooting.

BackendSpring BootTomcat
0 likes · 4 min read
Is Spring Boot’s Embedded Tomcat a Step Forward or Backward?