Tagged articles
3838 articles
Page 35 of 39
Programmer DD
Programmer DD
Aug 13, 2020 · Backend Development

How to Determine User City from IP in Spring Boot: A Practical Guide

This article explains why identifying a user's city via IP is crucial for operations, outlines various IP-to-city methods, and provides a complete Spring Boot implementation—including IP extraction, QQWry library integration, custom interceptors, and REST endpoints—to count visits per city.

IP geolocationInterceptorspring-boot
0 likes · 6 min read
How to Determine User City from IP in Spring Boot: A Practical Guide
Programmer DD
Programmer DD
Aug 11, 2020 · Backend Development

Simplify Spring Boot HTTP Calls with Retrofit Spring Boot Starter

This guide explains how to integrate Retrofit into a Spring Boot project using the retrofit‑spring‑boot‑starter, covering dependency setup, annotation configuration, custom interceptors, connection pool management, logging, exception formatting, call adapters, converters, and global interception to make HTTP client development more elegant and maintainable.

HTTP clientInterceptorRetrofit
0 likes · 15 min read
Simplify Spring Boot HTTP Calls with Retrofit Spring Boot Starter
Java Architecture Diary
Java Architecture Diary
Aug 11, 2020 · Backend Development

What Is Mica? A Minimalist Java Microservice Core for Spring Boot & Cloud

Mica, originally derived from the internal lutool project, is a lightweight Java 8‑based microservice core that supports both traditional Servlet and Reactive WebFlux, auto‑generates Spring configuration, adds metrics, Redis utilities, RSA helpers, and integrates with Prometheus and Grafana, with its source available on GitHub and Gitee.

MetricsOpen-sourcejava
0 likes · 3 min read
What Is Mica? A Minimalist Java Microservice Core for Spring Boot & Cloud
Open Source Linux
Open Source Linux
Aug 11, 2020 · Backend Development

Build a Docker‑Based Kafka Cluster and Integrate It with Spring Boot

This guide walks you through creating a three‑node Kafka cluster with Zookeeper using Docker‑Compose, configuring the necessary YAML, launching the containers, and then integrating the cluster into a Spring Boot application by adding dependencies, setting Kafka properties, defining message, sender, and receiver classes, and testing the message flow.

DockerDocker ComposeKafka
0 likes · 6 min read
Build a Docker‑Based Kafka Cluster and Integrate It with Spring Boot
Java Architecture Diary
Java Architecture Diary
Aug 10, 2020 · Backend Development

What’s New in ElasticJob 3.0.0‑alpha? Features, API Changes, and Release Highlights

ElasticJob 3.0.0‑alpha introduces a Spring Boot starter for ElasticJob‑Lite, one‑time tasks, expanded database support for execution logs, environment‑variable IP declaration, and several API changes including a new Maven groupId, package name, namespace, SPI‑based job types, and modular UI separation.

Distributed Schedulingapi-changesbackend-development
0 likes · 3 min read
What’s New in ElasticJob 3.0.0‑alpha? Features, API Changes, and Release Highlights
Architect's Tech Stack
Architect's Tech Stack
Aug 9, 2020 · Backend Development

Creating a Spring Boot Starter to Log Method Execution Time

This tutorial explains how to build a custom Spring Boot starter in four steps—setting up a Maven project, defining auto‑configuration with AOP, registering the starter via spring.factories, and packaging it—so that methods annotated with a custom @AspectLog annotation automatically log their execution duration.

BackendStarteraop
0 likes · 9 min read
Creating a Spring Boot Starter to Log Method Execution Time
Programmer DD
Programmer DD
Aug 8, 2020 · Backend Development

How to Build a Custom Spring Boot Starter that Logs Method Execution Time

Learn how to create a custom Spring Boot starter named aspectlog-spring-boot-starter that automatically logs method execution times using AOP, covering project setup, Maven configuration, conditional loading, annotation definition, auto‑configuration class, META‑INF registration, and packaging for reuse in other projects.

Custom Starteraopmethod timing
0 likes · 9 min read
How to Build a Custom Spring Boot Starter that Logs Method Execution Time
Senior Brother's Insights
Senior Brother's Insights
Aug 6, 2020 · Backend Development

How to Achieve Automatic API Idempotency with Spring Boot, Redis, and Custom Annotations

This article explains how to implement automatic idempotency for Spring Boot APIs using Redis, a custom @AutoIdempotent annotation, token generation and validation, and an interceptor, providing step‑by‑step code examples, configuration details, and testing procedures to ensure each request is processed only once.

Interceptorannotationjava
0 likes · 12 min read
How to Achieve Automatic API Idempotency with Spring Boot, Redis, and Custom Annotations
Architecture Digest
Architecture Digest
Aug 4, 2020 · Information Security

Integrating Apache Shiro with Spring Boot for Authentication and Authorization

This guide demonstrates how to integrate Apache Shiro into a Spring Boot application, covering project setup, Maven dependencies, configuration of Redis-backed session and cache management, creation of utility and realm classes, and implementation of role‑based permission controls with example controllers and Postman testing.

AuthenticationAuthorizationShiro
0 likes · 22 min read
Integrating Apache Shiro with Spring Boot for Authentication and Authorization
Selected Java Interview Questions
Selected Java Interview Questions
Aug 3, 2020 · Backend Development

Understanding Spring Boot’s Auto‑Configuration and “Convention over Configuration” Principles

This article explains how Spring Boot simplifies Java application development by providing out‑of‑the‑box starters, automatic configuration via spring.factories, and convention‑over‑configuration rules, covering the underlying annotations, Maven structure, starter dependencies, main class, and the use of @ConfigurationProperties to bind YAML settings.

Convention over Configurationauto-configurationbackend-development
0 likes · 25 min read
Understanding Spring Boot’s Auto‑Configuration and “Convention over Configuration” Principles
Java Captain
Java Captain
Aug 2, 2020 · Artificial Intelligence

Java Spring Boot License Plate Recognition and Training System (Open‑Source)

This article introduces an open‑source Java Spring Boot project that implements a license‑plate detection and recognition system with training capabilities, detailing its features, architecture, supported plate types, software requirements, processing steps, installation guide, and reference resources.

Deep LearningImage ProcessingOpenCV
0 likes · 8 min read
Java Spring Boot License Plate Recognition and Training System (Open‑Source)
Architects Research Society
Architects Research Society
Jul 31, 2020 · Backend Development

Building a Real‑time STOMP WebSocket Messaging Application with Spring Boot

This guide walks you through creating a Spring Boot application that uses WebSocket and STOMP to exchange JSON messages between a browser client and a server, covering project setup, dependencies, Java POJOs, controller logic, WebSocket configuration, client‑side JavaScript, and how to build and run the executable JAR.

javareal-time messagingspring-boot
0 likes · 21 min read
Building a Real‑time STOMP WebSocket Messaging Application with Spring Boot
Programmer DD
Programmer DD
Jul 31, 2020 · Backend Development

Unveiling the Inner Workings of @EnableAutoConfiguration in Spring Boot

This article dissects the processing flow of Spring Boot's @EnableAutoConfiguration annotation, revealing how AutoConfigurationImportSelector and DeferredImportSelector collaborate to load, filter, and order auto‑configuration classes based on metadata, conditions, and explicit exclusions.

@EnableAutoConfigurationAutoConfigurationImportSelectorDeferredImportSelector
0 likes · 12 min read
Unveiling the Inner Workings of @EnableAutoConfiguration in Spring Boot
Senior Brother's Insights
Senior Brother's Insights
Jul 30, 2020 · Backend Development

Integrate FastDFS with Spring Boot for File Upload, Download, and Management

This tutorial shows how to integrate the FastDFS distributed file system into a Spring Boot application, covering Maven dependencies, configuration files, utility classes, core client initialization, and controller code for uploading, downloading, retrieving, and deleting files, with complete code examples and a GitHub source link.

BackendFastDFSdistributed storage
0 likes · 9 min read
Integrate FastDFS with Spring Boot for File Upload, Download, and Management
Top Architect
Top Architect
Jul 29, 2020 · Backend Development

Investigation of Excessive Off‑Heap Memory Usage After Migrating a Spring Boot Project to the MDP Framework

The article details a step‑by‑step forensic analysis of why a Spring Boot application migrated to the MDP framework consumed far more physical memory than its configured 4 GB heap, uncovering off‑heap allocations caused by native code, package‑scanning, and glibc memory‑pool behavior, and explains how limiting scan paths or upgrading Spring Boot resolves the issue.

JVMMemory DebuggingNative Memory
0 likes · 12 min read
Investigation of Excessive Off‑Heap Memory Usage After Migrating a Spring Boot Project to the MDP Framework
Programmer DD
Programmer DD
Jul 28, 2020 · Information Security

Step‑by‑Step Guide to Implement SMS Captcha Login with Spring Security

This tutorial walks you through building a complete SMS‑based captcha authentication flow in Spring Security, covering cache lifecycle, service implementation, custom authentication token, provider, filter, and configuration, and shows how to integrate it without affecting existing login methods.

SMS captchaspring-bootspring-security
0 likes · 19 min read
Step‑by‑Step Guide to Implement SMS Captcha Login with Spring Security
Senior Brother's Insights
Senior Brother's Insights
Jul 26, 2020 · Backend Development

How Spring Boot Auto‑Configuration Works: Deep Dive into @EnableAutoConfiguration

This article explains Spring Boot's auto‑configuration mechanism, detailing the roles of starters, spring.factories, @EnableAutoConfiguration, related annotations, and the AutoConfigurationImportSelector, while showing source code examples and how to customize or disable specific auto‑configurations.

annotationsauto-configurationbackend-development
0 likes · 12 min read
How Spring Boot Auto‑Configuration Works: Deep Dive into @EnableAutoConfiguration
Java Architecture Diary
Java Architecture Diary
Jul 25, 2020 · Backend Development

What’s New in Spring Boot 2.3.2? 88 Fixes, New Features & Upgrade Guide

Spring Boot 2.3.2, now available via repo.spring.io and Maven Central, introduces 88 bug fixes, enhanced health monitoring, configurable Docker image builds, reactive Elasticsearch checks, and resolves critical issues like reactor‑netty file descriptor limits and Redis Cluster health checks, urging users of 2.3.1 or 2.2.8 to upgrade.

BackendDockerjava
0 likes · 3 min read
What’s New in Spring Boot 2.3.2? 88 Fixes, New Features & Upgrade Guide
Sohu Tech Products
Sohu Tech Products
Jul 22, 2020 · Backend Development

Understanding Spring Boot Auto‑Configuration and the @EnableAutoConfiguration Annotation

This article explains the core principles of Spring Boot’s auto‑configuration mechanism, details the roles of @EnableAutoConfiguration, spring.factories, AutoConfiguration classes and related annotations, and demonstrates how to customize or disable auto‑configuration with code examples.

annotationsauto-configurationbackend-development
0 likes · 12 min read
Understanding Spring Boot Auto‑Configuration and the @EnableAutoConfiguration Annotation
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jul 21, 2020 · Backend Development

Preventing Duplicate Submissions in Java: Front‑end and Back‑end Solutions with HashMap, Fixed Array, DCL and LRUMap

This article explains how to prevent duplicate form submissions in a single‑node Java Spring Boot application by first simulating the user scenario, then showing front‑end button disabling, and finally presenting five back‑end idempotency implementations ranging from a simple HashMap to a reusable LRUMap‑based utility.

BackendLRUMapduplicate submission
0 likes · 17 min read
Preventing Duplicate Submissions in Java: Front‑end and Back‑end Solutions with HashMap, Fixed Array, DCL and LRUMap
Java Captain
Java Captain
Jul 20, 2020 · Information Security

Integrating Apache Shiro with Spring Boot: Configuration, Session Management, and Permission Control

This guide demonstrates how to integrate the lightweight Apache Shiro security framework into a Spring Boot application, covering environment setup, Maven dependencies, Redis-backed session and cache configuration, utility classes, core Shiro components, annotation‑based permission control, and Postman testing for token handling and dynamic permission updates.

Shirojavaredis
0 likes · 21 min read
Integrating Apache Shiro with Spring Boot: Configuration, Session Management, and Permission Control
macrozheng
macrozheng
Jul 20, 2020 · Backend Development

How to Prevent Duplicate Submissions in Java: Simple Backend Solutions

This article explores practical methods to prevent duplicate submissions in Java applications, starting with a simple front‑end button disabling technique and progressing through several backend strategies—including HashMap, fixed‑size array, double‑checked locking, and Apache Commons LRUMap—complete with code samples and performance considerations.

BackendIdempotencyLRUMap
0 likes · 17 min read
How to Prevent Duplicate Submissions in Java: Simple Backend Solutions
Programmer DD
Programmer DD
Jul 20, 2020 · Backend Development

Master Spring Cloud Gateway: Build High‑Performance API Gateways Quickly

This article introduces Spring Cloud Gateway, explains its core concepts such as routes, predicates, and filters, demonstrates how to quickly set up a gateway with both Java‑based and configuration‑based routing, and shows how to create custom global and route‑specific filters for advanced request handling.

BackendMicroservicesSpring Cloud Gateway
0 likes · 13 min read
Master Spring Cloud Gateway: Build High‑Performance API Gateways Quickly
macrozheng
macrozheng
Jul 18, 2020 · Backend Development

Why You Should Stop Learning JSP: Modern Java Web Development Insights

The article argues that, unless required for legacy projects, learning JSP is unnecessary today because modern frontend frameworks, Spring's shift away from JSP, and microservice architectures all render JSP obsolete for contemporary Java web development.

JSPMicroservicesWeb Development
0 likes · 14 min read
Why You Should Stop Learning JSP: Modern Java Web Development Insights
Programmer DD
Programmer DD
Jul 18, 2020 · Backend Development

How to Build an EhCache Cluster for Spring Boot: A Step‑by‑Step Guide

This tutorial explains how to configure EhCache for distributed caching in a Spring Boot application, covering serialization, XML cluster settings, deployment parameters, REST endpoints for testing, and strategies to keep cache data consistent across multiple JVM instances.

Cache ClusteringEhcacheRMI
0 likes · 9 min read
How to Build an EhCache Cluster for Spring Boot: A Step‑by‑Step Guide
Programmer DD
Programmer DD
Jul 17, 2020 · Backend Development

SpringFox 3.0.0 Quick Guide: Swagger Integration for Spring Boot

This article introduces SpringFox 3.0.0, highlights its new features such as Spring 5 WebFlux support, OpenAPI 3 compatibility, and zero‑configuration starter, then provides a step‑by‑step guide with Maven dependencies, annotations, controller examples, and notes on updated Swagger UI endpoints.

API documentationBackendOpenAPI
0 likes · 7 min read
SpringFox 3.0.0 Quick Guide: Swagger Integration for Spring Boot
Programmer DD
Programmer DD
Jul 16, 2020 · Backend Development

How to Integrate EhCache into Spring Boot for Faster Data Access

This article explains how Spring Boot automatically detects cache providers, shows how to replace the default ConcurrentHashMap with EhCache by adding the dependency, configuring ehcache.xml, and verifying the CacheManager type through unit tests, providing complete code examples and step‑by‑step instructions.

CacheManagerEhcachebackend-development
0 likes · 7 min read
How to Integrate EhCache into Spring Boot for Faster Data Access
Java Architecture Diary
Java Architecture Diary
Jul 15, 2020 · Cloud Computing

Unify Object Storage via S3 Protocol for Multi-Cloud and MinIO

This guide explains the background of object storage services, shows SDK upload examples for Alibaba Cloud, Huawei Cloud, and Qiniu, introduces the Amazon S3 protocol as a universal solution, lists compatible Chinese cloud providers, and demonstrates how to configure and use a Spring Boot OSS starter—including support for self‑hosted MinIO—by setting appropriate parameters and invoking OssTemplate.

MinioS3 protocolcloud storage
0 likes · 6 min read
Unify Object Storage via S3 Protocol for Multi-Cloud and MinIO
Top Architect
Top Architect
Jul 15, 2020 · Backend Development

Graceful Shutdown in Spring Boot 2.3: Configuration, Usage, and Best Practices

This article explains how Spring Boot 2.3 provides built‑in graceful shutdown for embedded web servers, how to enable it with configuration, the role of the Shutdown enum and timeout settings, and additional techniques such as Actuator endpoints and signal handling to ensure safe application termination.

ActuatorGraceful ShutdownWeb server
0 likes · 5 min read
Graceful Shutdown in Spring Boot 2.3: Configuration, Usage, and Best Practices
macrozheng
macrozheng
Jul 13, 2020 · Backend Development

Top 16 Spring Boot Best Practices for Robust Microservices

This article presents sixteen practical Spring Boot best‑practice recommendations—from using custom BOMs and auto‑configuration to structuring code, handling concurrency, externalizing configuration, and testing—aimed at building clean, maintainable, and production‑ready Java microservices.

Microservicesbackend-developmentconfiguration
0 likes · 13 min read
Top 16 Spring Boot Best Practices for Robust Microservices
ITPUB
ITPUB
Jul 12, 2020 · Backend Development

Why Switch to Undertow in Spring Boot? Performance and Memory Gains Over Tomcat

This article explains how to replace Spring Boot's default embedded Tomcat with Undertow, compares their architectures, presents benchmark results showing Undertow's superior throughput and lower memory usage, and concludes that Undertow is the better choice for high‑concurrency Java web applications.

PerformanceTomcatWeb server
0 likes · 6 min read
Why Switch to Undertow in Spring Boot? Performance and Memory Gains Over Tomcat
Programmer DD
Programmer DD
Jul 11, 2020 · Backend Development

How to Build a Reliable Email Service with RabbitMQ and Spring Boot

This article walks through creating a robust email‑sending system using Spring Boot and RabbitMQ, covering message confirmation, consumer idempotency, retry mechanisms, scheduled re‑delivery, and detailed code examples to ensure reliable delivery even under failure conditions.

EmailIdempotencyMessage Retry
0 likes · 16 min read
How to Build a Reliable Email Service with RabbitMQ and Spring Boot
Programmer DD
Programmer DD
Jul 10, 2020 · Backend Development

Mastering Spring Boot Transactions: From Basics to Advanced Settings

This article explains what database transactions are, demonstrates how to use Spring Boot’s @Transactional annotation with unit tests, and dives into transaction isolation levels and propagation behaviors, providing code examples and guidance for effective transaction management in Java backend applications.

Isolation Leveldatabasejava
0 likes · 13 min read
Mastering Spring Boot Transactions: From Basics to Advanced Settings
Top Architect
Top Architect
Jul 8, 2020 · Information Security

kk-anti-reptile: Spring Boot Anti‑Crawler Component and Integration Guide

The article introduces kk-anti-reptile, a Spring Boot‑based anti‑crawler component that uses servlet filters, Redis, and configurable rule chains (IP and User‑Agent), explains its workflow, shows Maven and property configurations, and provides front‑end Axios interception code for handling 509 responses.

Information Securityanti‑crawleraxios
0 likes · 6 min read
kk-anti-reptile: Spring Boot Anti‑Crawler Component and Integration Guide
macrozheng
macrozheng
Jul 8, 2020 · Cloud Native

How to Shrink Docker Images with Spring Boot Layered Builds

This guide explains why Docker images become large, identifies the three main factors—base image size, Dockerfile layer count, and application JAR size—and demonstrates how to use Spring Boot's layered packaging and Dockerfile tricks to reduce image size from megabytes to a few kilobytes.

ContainerizationDockerImage Optimization
0 likes · 8 min read
How to Shrink Docker Images with Spring Boot Layered Builds
Senior Brother's Insights
Senior Brother's Insights
Jul 7, 2020 · Backend Development

How to Implement i18n Internationalization in Spring Boot APIs

This guide walks through adding Spring Boot i18n support, covering Maven dependencies, project structure, locale resolver and interceptor configuration, message file setup, a utility class, and a sample controller that returns localized responses based on a language query parameter.

Backend APILocaleChangeInterceptorLocaleResolver
0 likes · 6 min read
How to Implement i18n Internationalization in Spring Boot APIs
Java Backend Technology
Java Backend Technology
Jul 7, 2020 · Backend Development

Why My Spring Boot App Swallowed 7 GB RAM: Uncovering Native Memory Leaks

After migrating a project to the MDP framework based on Spring Boot, the author observed excessive swap usage and physical memory consumption of 7 GB despite a 4 GB heap limit, and through a series of JVM, system, and native‑code diagnostics identified Spring Boot’s ZipInflaterInputStream native‑memory leak caused by unchecked package scanning.

JVMNative Memorygperftools
0 likes · 12 min read
Why My Spring Boot App Swallowed 7 GB RAM: Uncovering Native Memory Leaks
Java Captain
Java Captain
Jul 5, 2020 · Backend Development

My Journey of Reading Source Code and Debugging Spring Boot with Quartz

The article recounts the author's evolution from avoiding source code to actively reading JDK, Spring, MyBatis, Shiro and Quartz implementations, explains why reading code matters for interviews and personal growth, and shares practical methods—including official docs, books, blogs, and IDE breakpoint debugging with concrete Spring Boot‑Quartz examples.

Quartzdebuggingjava
0 likes · 13 min read
My Journey of Reading Source Code and Debugging Spring Boot with Quartz
Architecture Digest
Architecture Digest
Jul 5, 2020 · Backend Development

Diagnosing Excessive Off‑Heap Memory Usage in a Spring Boot Application

The article details a step‑by‑step investigation of why a Spring Boot service migrated to the MDP framework consumed far more physical memory than its 4 GB heap, revealing native‑code allocations, memory‑pool behavior of glibc and tcmalloc, and how limiting MCC scan paths or upgrading Spring Boot resolves the off‑heap leak.

Native MemoryOff-Heap MemoryPerformance debugging
0 likes · 11 min read
Diagnosing Excessive Off‑Heap Memory Usage in a Spring Boot Application
Programmer DD
Programmer DD
Jul 5, 2020 · Backend Development

Why Did My Spring Boot Service Consume 7 GB? Uncovering Native Memory Leaks

The article details a step‑by‑step investigation of a Spring Boot application that unexpectedly used 7 GB of physical memory despite a 4 GB heap limit, revealing how native memory allocations, the Inflater class, and glibc memory pools caused off‑heap leaks and how proper configuration and library updates resolved the issue.

Native MemoryPerformancedebugging
0 likes · 13 min read
Why Did My Spring Boot Service Consume 7 GB? Uncovering Native Memory Leaks
macrozheng
macrozheng
Jul 1, 2020 · Backend Development

Why Spring Boot Switched from Maven to Gradle—and How It Boosts Build Speed

Spring Boot’s shift from Maven to Gradle, introduced in version 2.3.0.M1, dramatically cuts build times—from over an hour with Maven to under ten seconds on average with Gradle—by enabling incremental and parallel builds, while still supporting Maven for dependency management.

Build OptimizationGradlejava
0 likes · 5 min read
Why Spring Boot Switched from Maven to Gradle—and How It Boosts Build Speed
Architect's Tech Stack
Architect's Tech Stack
Jun 30, 2020 · Backend Development

Using Spring Boot Actuator and Spring Boot Admin for Application Monitoring

This article explains how to integrate Spring Boot Actuator for exposing health and metrics endpoints, configure security, disable specific endpoints, and visualize monitoring data using JConsole and Spring Boot Admin, including necessary Maven dependencies and code examples, while also noting a promotional interview‑question PDF resource.

ActuatorJConsolebackend-development
0 likes · 7 min read
Using Spring Boot Actuator and Spring Boot Admin for Application Monitoring
Top Architect
Top Architect
Jun 30, 2020 · Databases

Sharding-JDBC Demo: Implementing Database Sharding with Spring Boot

This article demonstrates how to set up Sharding-JDBC in a Spring Boot project, covering project structure, Maven configuration, entity, controller, service, mapper code, database DDL for multiple shards, sharding rules in application.properties, and API testing with Postman.

MySQLORMSharding-JDBC
0 likes · 14 min read
Sharding-JDBC Demo: Implementing Database Sharding with Spring Boot
Top Architect
Top Architect
Jun 29, 2020 · Backend Development

Using RocketMQ for Traffic Shaping in Spring Boot: Configuration, Code Samples, and Performance Tuning

This article explains how to use RocketMQ for traffic‑shaping in a Spring Boot application, covering its core components, consumer pull configuration, integration via rocketmq‑spring‑boot‑starter, a practical like‑praise use case, a Maven setup, YAML configuration, and advanced topics such as dynamic scaling and batch consumption.

Message QueueMicroservicesPerformance
0 likes · 15 min read
Using RocketMQ for Traffic Shaping in Spring Boot: Configuration, Code Samples, and Performance Tuning
Java Backend Technology
Java Backend Technology
Jun 29, 2020 · Backend Development

Master Spring Initializr: From Basic Setup to Advanced Customization

This article explains how to use Spring Initializr and Alibaba's start.aliyun.com to generate Spring Boot projects, covering basic dependency setup, configuration of packagings, Java versions, languages, project types, advanced features like caching and demo code injection, and the underlying startup and generation phases of the framework.

InitializrProject Generationcustomization
0 likes · 22 min read
Master Spring Initializr: From Basic Setup to Advanced Customization
Architect's Alchemy Furnace
Architect's Alchemy Furnace
Jun 28, 2020 · Backend Development

Mastering Java Exception Handling and Global Error Management in Spring Boot

This article explains Java's throw‑catch mechanism, the three core principles of exception handling, and demonstrates how to design a custom exception hierarchy and a Spring Boot @ControllerAdvice‑based global handler to simplify error processing and improve code maintainability.

Exception HandlingGlobal Error Handlingbackend-development
0 likes · 13 min read
Mastering Java Exception Handling and Global Error Management in Spring Boot
Top Architect
Top Architect
Jun 26, 2020 · Backend Development

Design and Implementation of a Transactional Message Module Using RabbitMQ and MySQL

This article explains a lightweight transactional message solution for microservices that leverages RabbitMQ, MySQL, and Spring Boot to achieve eventual consistency, detailing design principles, compensation mechanisms, table schemas, and deployment considerations for high‑throughput asynchronous processing.

CompensationDistributed SystemsMySQL
0 likes · 9 min read
Design and Implementation of a Transactional Message Module Using RabbitMQ and MySQL
Programmer DD
Programmer DD
Jun 26, 2020 · Backend Development

How to Configure Multiple Data Sources with MyBatis in Spring Boot

Learn step-by-step how to set up and test multiple data sources in a Spring Boot application using MyBatis, covering property configuration, DataSource beans, mapper scanning, entity definitions, and verification through unit tests with complete code examples and key configuration notes.

Database ConfigurationMultiple Data Sourcesjava
0 likes · 11 min read
How to Configure Multiple Data Sources with MyBatis in Spring Boot
Programmer DD
Programmer DD
Jun 25, 2020 · Backend Development

How to Build a Low‑Intrusive Transactional Message System with Spring Boot and RabbitMQ

This article explains a lightweight, low‑intrusive transactional message solution for microservices using Spring Boot, RabbitMQ, and MySQL, covering design principles, table schemas, transaction synchronization, compensation mechanisms, code implementation, and deployment considerations to achieve eventual consistency without sacrificing performance.

Distributed SystemsMySQLRabbitMQ
0 likes · 24 min read
How to Build a Low‑Intrusive Transactional Message System with Spring Boot and RabbitMQ
Java Architecture Diary
Java Architecture Diary
Jun 23, 2020 · Backend Development

Fixing @RefreshScope Conflict with @ConditionalOnSingleCandidate in Spring Boot

In Spring Cloud projects, adding @RefreshScope to a custom RabbitMQ ConnectionFactory can clash with @ConditionalOnSingleCandidate, preventing RabbitTemplate from being auto‑wired; this article explains the root cause, demonstrates how to diagnose the issue, and provides a solution to avoid such bean conflicts.

@RefreshScopeBean InjectionConditionalOnSingleCandidate
0 likes · 5 min read
Fixing @RefreshScope Conflict with @ConditionalOnSingleCandidate in Spring Boot
Programmer DD
Programmer DD
Jun 23, 2020 · Information Security

How to Secure API Calls with Tokens, Timestamps, and Signatures in Spring Boot

This article explains practical methods for protecting API data exchange—including token usage, timestamp validation, signature generation, duplicate‑submission prevention, and ThreadLocal context—provides implementation details with Spring Boot, Redis, and Java code examples, and discusses related security considerations such as DoS attacks.

API SecurityTokenjava
0 likes · 26 min read
How to Secure API Calls with Tokens, Timestamps, and Signatures in Spring Boot
Top Architect
Top Architect
Jun 22, 2020 · Information Security

Implementing Token-Based Authentication, Anti‑DoS, and Repeat‑Submission Prevention in Spring Boot

This article explains how to design a secure token mechanism with timestamp validation, describes common DoS attack types, and provides practical Spring Boot code examples—including Redis configuration, token generation, interceptor logic, MD5 signing utilities, and ThreadLocal usage—to prevent repeat submissions and protect APIs.

DoS protectionThreadLocaljava
0 likes · 21 min read
Implementing Token-Based Authentication, Anti‑DoS, and Repeat‑Submission Prevention in Spring Boot
Programmer DD
Programmer DD
Jun 21, 2020 · Backend Development

Build a High‑Performance API Gateway with Soul 2.2.0 in 10 Minutes

This article introduces Soul 2.2.0’s fully plugin‑based architecture, walks through downloading and running soul‑admin, shows how to build a Spring Boot gateway with required dependencies and configuration, demonstrates hot‑swap plugins for Dubbo, circuit‑breaker and rate limiting, and highlights its key features and typical use cases.

Microservicesapi-gatewayjava
0 likes · 13 min read
Build a High‑Performance API Gateway with Soul 2.2.0 in 10 Minutes
Java Backend Technology
Java Backend Technology
Jun 18, 2020 · Backend Development

How to Build a Reentrant Distributed Lock with Redis, ThreadLocal, and Lua

This article explains why redoing a system can be simpler than refactoring, then dives into implementing a reentrant distributed lock using Redis with both ThreadLocal and Redis Hash approaches, providing detailed Java code, Lua scripts, and practical tips for handling lock expiration and multi‑process reentrancy.

LuaThreadLocaldistributed-lock
0 likes · 17 min read
How to Build a Reentrant Distributed Lock with Redis, ThreadLocal, and Lua
Architect's Tech Stack
Architect's Tech Stack
Jun 16, 2020 · Backend Development

Deep Dive into Spring Boot Auto‑Configuration and How to Build a Custom Starter

This article explains the inner workings of Spring Boot’s @SpringBootApplication annotation, the loading of auto‑configuration classes from META‑INF/spring.factories, the refresh of the application context, the creation of the embedded Tomcat server, and demonstrates how to create a custom starter with configuration properties.

Custom Starterbackend-developmentspring-boot
0 likes · 12 min read
Deep Dive into Spring Boot Auto‑Configuration and How to Build a Custom Starter
转转QA
转转QA
Jun 11, 2020 · Backend Development

Integrating Quartz with Spring Boot for Dynamic Scheduled Tasks

This article explains how to integrate the Quartz scheduler into a Spring Boot application to create, update, delete, pause, and resume dynamic scheduled jobs without restarting the service, covering Quartz fundamentals, storage options, configuration steps, job implementation, and deployment considerations.

Dynamic SchedulingQuartzspring-boot
0 likes · 6 min read
Integrating Quartz with Spring Boot for Dynamic Scheduled Tasks
Java Architecture Diary
Java Architecture Diary
Jun 11, 2020 · Operations

Why Spring Boot Switched to Gradle and Cut Build Times by 80%

Spring Boot’s 2.3.0 release marked a major shift from Maven to Gradle, driven by the need to reduce build times, leverage incremental and parallel builds, and improve CI efficiency, resulting in average build times dropping from over an hour to just over nine minutes.

Build PerformanceCI/CDGradle
0 likes · 6 min read
Why Spring Boot Switched to Gradle and Cut Build Times by 80%
macrozheng
macrozheng
Jun 11, 2020 · Backend Development

How to Implement RabbitMQ Delayed Messages with the Delayed Plugin in Spring Boot

This guide walks through installing the RabbitMQ delayed‑message‑exchange plugin, configuring it in a Spring Boot application, and building Java components to send and receive delayed order‑cancellation messages, comparing the plugin approach with dead‑letter queues and providing complete code snippets and deployment steps.

Message QueueRabbitMQbackend-development
0 likes · 12 min read
How to Implement RabbitMQ Delayed Messages with the Delayed Plugin in Spring Boot
vivo Internet Technology
vivo Internet Technology
Jun 10, 2020 · Backend Development

Understanding Spring Boot Configuration Class Parsing and Core Annotations

Spring Boot parses @SpringBootApplication by combining @SpringBootConfiguration, @EnableAutoConfiguration, and @ComponentScan, then processes @Import, @Conditional, and bean post‑processors, uses SpringFactoriesLoader for auto‑configuration, and follows an eight‑step configuration‑class parsing flow to register beans during startup.

Bean Processingannotationsauto-configuration
0 likes · 35 min read
Understanding Spring Boot Configuration Class Parsing and Core Annotations
Selected Java Interview Questions
Selected Java Interview Questions
Jun 4, 2020 · Backend Development

Step-by-Step Integration of Dataway with Spring Boot

This article provides a comprehensive tutorial on how to integrate Dataway—a DataQL‑based API configuration tool—into a Spring Boot project, covering dependency setup, configuration properties, datasource wiring, Hasor module creation, enabling Hasor, and using the Dataway UI to create and publish APIs without writing any Java code.

API ConfigurationDataQLDataway
0 likes · 14 min read
Step-by-Step Integration of Dataway with Spring Boot
Sohu Tech Products
Sohu Tech Products
Jun 3, 2020 · Backend Development

Graceful Shutdown in Spring Boot 2.3 and Earlier Versions

This article explains how to enable and use Spring Boot's graceful shutdown feature in version 2.3, including configuration of the embedded web server and Actuator, and also provides a custom solution for older Spring Boot releases to achieve smooth termination of ongoing requests.

ActuatorGraceful ShutdownTomcat
0 likes · 8 min read
Graceful Shutdown in Spring Boot 2.3 and Earlier Versions
Programmer DD
Programmer DD
Jun 3, 2020 · Backend Development

Mastering Graceful Shutdown in Spring Boot 2.3: Best Practices & Code

This article explains why graceful shutdown is essential for Spring Boot and Spring Cloud applications, outlines key precautions, shows how Spring Boot 2.3 adds built‑in support, and provides configuration steps, code examples, and container‑specific behaviors to ensure clean service termination.

ActuatorGraceful ShutdownMicroservices
0 likes · 7 min read
Mastering Graceful Shutdown in Spring Boot 2.3: Best Practices & Code
FunTester
FunTester
Jun 3, 2020 · Backend Development

Uncovering 65% Memory Waste in Spring Petclinic: Causes and Fixes

Through a 30‑minute Apache JMeter load test on the Spring Boot Petclinic sample, we captured heap dumps and used HeapHero to reveal that 65% of memory is wasted due to string duplication, inefficient collections, and poor initialization, offering concrete code‑level recommendations to improve memory efficiency.

Heap AnalysisMemory OptimizationPerformance Testing
0 likes · 9 min read
Uncovering 65% Memory Waste in Spring Petclinic: Causes and Fixes
Senior Brother's Insights
Senior Brother's Insights
Jun 3, 2020 · Backend Development

How We Traced and Fixed Excessive Native Memory Usage After Migrating to Spring Boot

After moving a project to Spring Boot, the system reported unusually high swap usage despite a 4 GB heap, prompting a detailed investigation using JVM native‑memory tracking, pmap, gperftools, strace, and GDB, which ultimately identified Spring Boot’s JAR scanning and glibc memory arenas as the root causes and led to a configuration fix and an upgrade to resolve the off‑heap memory leak.

JVMLinuxNative Memory
0 likes · 11 min read
How We Traced and Fixed Excessive Native Memory Usage After Migrating to Spring Boot
Java Architecture Diary
Java Architecture Diary
Jun 1, 2020 · Backend Development

How MyBatis-Plus Secures Configurations with a Custom EnvironmentPostProcessor

This article explains how MyBatis-Plus adds data-security protection to Spring Boot applications by encrypting datasource and property file values, details the custom EnvironmentPostProcessor implementation, loading mechanisms, and offers extension ideas and alternatives such as jasypt-spring-boot-starter.

Configuration EncryptionEnvironmentPostProcessorjava
0 likes · 6 min read
How MyBatis-Plus Secures Configurations with a Custom EnvironmentPostProcessor
Java Backend Technology
Java Backend Technology
May 28, 2020 · Backend Development

How to Build a Low‑Intrusion Transactional Message System with Spring Boot and RabbitMQ

This article details a lightweight transactional message solution for microservices that stores pending messages in a local MySQL table, defers RabbitMQ publishing until after transaction commit, and includes compensation logic with exponential back‑off to ensure reliable asynchronous communication.

CompensationDistributed SystemsMySQL
0 likes · 23 min read
How to Build a Low‑Intrusion Transactional Message System with Spring Boot and RabbitMQ
Programmer DD
Programmer DD
May 28, 2020 · Backend Development

How to Use RocketMQ for Traffic Shaping and Peak‑Smoothing in Spring Boot

This article explains how RocketMQ’s decoupling, asynchronous and peak‑shaving features can be applied in a Spring Boot project to buffer massive like‑click traffic, reduce database pressure, and dynamically tune consumer pull parameters for optimal throughput.

Consumer ConfigurationMessage QueuePeak Shaving
0 likes · 14 min read
How to Use RocketMQ for Traffic Shaping and Peak‑Smoothing in Spring Boot
Java Architect Essentials
Java Architect Essentials
May 26, 2020 · Backend Development

gRPC Java Tutorial: Building a Spring Boot Service with Maven

This article provides a step‑by‑step guide to using Google's open‑source gRPC framework in Java, covering Protocol Buffers service definitions, Maven configuration, Spring Boot server implementation, client creation, and unit testing to demonstrate cross‑language RPC communication.

Protocol BuffersgRPCmaven
0 likes · 16 min read
gRPC Java Tutorial: Building a Spring Boot Service with Maven
Java Captain
Java Captain
May 25, 2020 · Backend Development

Implementing Distributed Locks with Redisson in Spring Boot

This article demonstrates how to integrate Redisson with Spring Boot to create Redis‑based distributed locks, covering Maven dependencies, YAML configuration, a Redisson configuration class, utility methods for locking and unlocking, and a sample controller that simulates concurrent access to verify lock behavior.

distributed-lockjavaredis
0 likes · 8 min read
Implementing Distributed Locks with Redisson in Spring Boot
Java Architecture Diary
Java Architecture Diary
May 25, 2020 · Cloud Native

Mastering Global Exception Handling in Spring Cloud Gateway

This article explains why traditional @ControllerAdvice fails in Spring Cloud Gateway, introduces the built‑in ExceptionHandlingWebHandler and DefaultErrorWebExceptionHandler, and shows how to override them with a custom GlobalExceptionConfiguration for robust reactive error handling.

Error HandlingSpring Cloud GatewayWebFlux
0 likes · 5 min read
Mastering Global Exception Handling in Spring Cloud Gateway
Architecture Digest
Architecture Digest
May 18, 2020 · Information Security

API Security Practices: Token, Timestamp, Signature, and Replay Protection in Java

This article explains common API security mechanisms such as token, timestamp, signature, and anti‑replay techniques, demonstrates how to prevent duplicate submissions, and provides complete Java Spring Boot code examples including interceptors, Redis configuration, and utility classes for secure API design.

API SecurityInformation SecurityToken
0 likes · 27 min read
API Security Practices: Token, Timestamp, Signature, and Replay Protection in Java
Java Architecture Diary
Java Architecture Diary
May 16, 2020 · Backend Development

Spring Boot 2.3 Highlights: Dependency Upgrades, Java 14, Docker & More

Spring Boot 2.3 introduces major core component upgrades—including Spring Data Neumann, Spring HATEOAS 1.1, and Spring Security 5.3—adds Java 14 compatibility while retaining Java 8/11 support, enhances Docker integration with Cloud Native Buildpacks and layered jars, and provides graceful shutdown and health‑probe features for improved application reliability.

DockerJava 14dependency-upgrade
0 likes · 4 min read
Spring Boot 2.3 Highlights: Dependency Upgrades, Java 14, Docker & More
Java Architecture Diary
Java Architecture Diary
May 14, 2020 · Backend Development

What’s New in Spring Boot Admin 2.2.3? Key Upgrade Details and Dependency Info

This article lists the Maven dependencies for Spring Boot Admin 2.2.3 and outlines the upgrade changes, including Spring Boot 2.2.7, Spring Cloud Hoxton.SR4, Portuguese language support, customizable pages, language set extensions, InstanceEvents deserialization improvements, and fixes for custom CSS/JS loading issues.

Upgrade Logdependency managementinternationalization
0 likes · 2 min read
What’s New in Spring Boot Admin 2.2.3? Key Upgrade Details and Dependency Info
Programmer DD
Programmer DD
May 12, 2020 · Backend Development

How to Integrate Dataway with Spring Boot for Zero‑Code API Configuration

This tutorial walks through integrating Dataway into a Spring Boot project, covering dependency setup, Dataway configuration, database table creation, data source integration, Hasor module registration, enabling Hasor, running the application, accessing the UI, and creating APIs using SQL or DataQL, all without writing custom code.

API ConfigurationDataQLDataway
0 likes · 14 min read
How to Integrate Dataway with Spring Boot for Zero‑Code API Configuration
Architect's Tech Stack
Architect's Tech Stack
May 10, 2020 · Backend Development

Generating Spring Boot CRUD Code with EasyCode Plugin in IntelliJ IDEA

This tutorial walks through installing the EasyCode and Lombok plugins, creating a MySQL table, configuring IDEA database connections, generating entity, DAO, service, controller, and mapper code for a Spring Boot project, and setting up the required Maven dependencies and application.yml configuration.

EasyCodeIntelliJ IDEAmybatis
0 likes · 6 min read
Generating Spring Boot CRUD Code with EasyCode Plugin in IntelliJ IDEA