Tagged articles
5000 articles
Page 44 of 50
Su San Talks Tech
Su San Talks Tech
Feb 18, 2024 · Backend Development

Mastering CompletableFuture: From Basics to RocketMQ Integration

This article explains Java's CompletableFuture, its advantages over the traditional Future API, demonstrates common methods with code examples, and shows how RocketMQ leverages CompletableFuture to coordinate asynchronous disk flush and replica synchronization tasks.

CompletableFutureFutureRocketMQ
0 likes · 15 min read
Mastering CompletableFuture: From Basics to RocketMQ Integration
FunTester
FunTester
Feb 18, 2024 · Backend Development

Mastering Java Concurrency: Threads, Synchronization, and Immutable Design

This article provides a step‑by‑step guide to Java concurrency, covering core concepts such as threads, runnables, thread lifecycle, synchronization primitives, wait/notify patterns, volatile variables, ThreadLocal storage, and how to design immutable objects for thread‑safety, all illustrated with concrete code examples and detailed explanations.

ImmutableSynchronizationThread
0 likes · 17 min read
Mastering Java Concurrency: Threads, Synchronization, and Immutable Design
Programmer DD
Programmer DD
Feb 17, 2024 · Backend Development

What’s New in IntelliJ IDEA 2024.1 EAP? Top Features for Spring, HTTP, and GitHub Actions

The IntelliJ IDEA 2024.1 EAP 5 release brings powerful enhancements for Spring and other Java frameworks, richer HTTP client capabilities, improved GitHub Actions support, and various productivity tweaks such as JSON schema handling and automatic header completion, all aimed at boosting backend developers' efficiency.

GitHub ActionsHTTP clientIntelliJ IDEA
0 likes · 6 min read
What’s New in IntelliJ IDEA 2024.1 EAP? Top Features for Spring, HTTP, and GitHub Actions
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Feb 17, 2024 · Backend Development

Mastering @InitBinder in Spring Boot 3: Custom Data Binding Techniques

This article explains how to use Spring Boot's @InitBinder annotation in @Controller and @ControllerAdvice classes to customize WebDataBinder for parameter binding, type conversion, and formatting, and provides five practical examples demonstrating custom editors, converters, global binders, and field restrictions.

Custom ConverterInitBinderSpring Boot
0 likes · 6 min read
Mastering @InitBinder in Spring Boot 3: Custom Data Binding Techniques
Selected Java Interview Questions
Selected Java Interview Questions
Feb 16, 2024 · Backend Development

Integrating Redis with Spring Boot: Dependencies, Configuration, and Usage Guide

This tutorial explains how to add Redis dependencies to a Spring Boot project, configure connection settings, use RedisTemplate for basic operations, enable Spring Cache, employ Redisson for distributed locks, and fine‑tune connection pool and timeout parameters, providing complete code examples.

Spring Bootbackend-developmentdistributed-lock
0 likes · 10 min read
Integrating Redis with Spring Boot: Dependencies, Configuration, and Usage Guide
Java Captain
Java Captain
Feb 16, 2024 · Backend Development

Differences Between Spring and Spring Boot: A Comprehensive Comparison

Spring Boot, an evolution of the Spring framework, simplifies project setup, offers built-in web servers, provides production-ready features, and enhances development efficiency, distinguishing it from traditional Spring which requires extensive XML configuration and external servlet containers, making Boot the preferred choice for modern Java backend development.

MicroservicesSpring Bootbackend-development
0 likes · 4 min read
Differences Between Spring and Spring Boot: A Comprehensive Comparison
Architect
Architect
Feb 15, 2024 · Backend Development

Mastering State Patterns with Spring State Machine: From Theory to Order Workflow

This article explains the classic State design pattern, demonstrates a traffic‑light example, compares Spring State Machine with COLA, and walks through building a complete order‑status workflow in Spring Boot using enums, configuration, listeners, services, and a test controller, while highlighting trade‑offs and alternatives.

BackendOrder WorkflowState Pattern
0 likes · 14 min read
Mastering State Patterns with Spring State Machine: From Theory to Order Workflow
Su San Talks Tech
Su San Talks Tech
Feb 15, 2024 · Backend Development

How to Ensure Transaction Rollback in Spring Multithreaded Operations

This article explains why the @Transactional annotation fails in Spring when using multithreading, demonstrates a failing example, and provides a solution using manual SqlSession management to guarantee that all database changes are rolled back if any thread encounters an exception.

MyBatisjavamultithreading
0 likes · 10 min read
How to Ensure Transaction Rollback in Spring Multithreaded Operations
Architect
Architect
Feb 14, 2024 · Backend Development

Implementing Order Lifecycle Management with Spring Statemachine, Persistence, and AOP

This article explains the fundamentals of finite state machines, demonstrates how to model order states using Spring Statemachine, shows persistence options with in‑memory and Redis stores, and provides advanced techniques such as exception handling, extended state tracking, and AOP‑based result logging for reliable state transitions.

Order ManagementPersistenceaop
0 likes · 23 min read
Implementing Order Lifecycle Management with Spring Statemachine, Persistence, and AOP
Java Tech Enthusiast
Java Tech Enthusiast
Feb 14, 2024 · Backend Development

Generic Excel Export for Arbitrary Java Objects via Reflection

The article shows how to generically export any Java object's data to an Excel‑compatible CSV file by using reflection to convert objects into maps, building headers (optionally via a @JcExcelName annotation) and writing the result with a reusable utility class and Maven‑managed Apache POI, FastJSON, and Commons‑IO dependencies, illustrated through SpringBoot controller and main‑method examples.

CSVReflectionannotation
0 likes · 10 min read
Generic Excel Export for Arbitrary Java Objects via Reflection
Java Tech Enthusiast
Java Tech Enthusiast
Feb 14, 2024 · Backend Development

Understanding Xxl-Job: Architecture and Implementation of a Lightweight Distributed Task Scheduler

The article explains Xxl‑Job’s lightweight distributed scheduling architecture—detailing its Scheduling Center, Executor, and Task components, demo installation steps, Maven configuration, executor bean setup, job‑handler types, scheduling logic, thread‑pool and routing strategies, blocking policies, result callbacks, and overall HTTP‑based communication flow.

Distributed Schedulingarchitecturejava
0 likes · 19 min read
Understanding Xxl-Job: Architecture and Implementation of a Lightweight Distributed Task Scheduler
Architect
Architect
Feb 13, 2024 · Information Security

Implementing API Key Authentication in Spring Security for REST APIs

This tutorial explains how to secure a Spring Boot REST API using API key authentication, covering the addition of Maven dependencies, creating a custom filter, extending AbstractAuthenticationToken, configuring the security filter chain, and testing the protected endpoint with curl commands.

API keyREST APIjava
0 likes · 8 min read
Implementing API Key Authentication in Spring Security for REST APIs
Su San Talks Tech
Su San Talks Tech
Feb 13, 2024 · Backend Development

How to Ensure Transaction Consistency When Async Threads Fail in Spring

This article explains how to guarantee transactional integrity when importing a 100,000‑row Excel file with asynchronous threads in Spring, covering double‑async optimization, Future and CompletableFuture handling, @Transactional pitfalls, manual transaction control, and a complete solution for cross‑thread transaction management.

AsyncCompletableFutureExcel Import
0 likes · 18 min read
How to Ensure Transaction Consistency When Async Threads Fail in Spring
MaGe Linux Operations
MaGe Linux Operations
Feb 12, 2024 · Information Security

How XML External Entity (XXE) Attacks Exploit DTDs and How to Defend Them

This article explains fundamental XML concepts, DTD and entity definitions, demonstrates common XXE attack scenarios such as file reading, internal network probing, DoS and XInclude exploitation with Java code examples, and provides practical security hardening techniques including disabling XInclude, DTD parsing, and external entity resolution.

DTDEntity ExpansionXInclude
0 likes · 15 min read
How XML External Entity (XXE) Attacks Exploit DTDs and How to Defend Them
Java Tech Enthusiast
Java Tech Enthusiast
Feb 12, 2024 · Backend Development

Dynamic Loading and Unloading of Java Governance Tasks with Custom ClassLoader and XXL‑Job Integration

The solution introduces a plug‑in architecture that uses a custom URLClassLoader to load governance task JARs at runtime, registers their Spring beans and @XxlJob handlers with XXL‑Job, and provides unload logic to deregister jobs, destroy beans, and update configuration via YAML or Nacos without restarting the service.

Dynamic LoadingNacosXXL-JOB
0 likes · 21 min read
Dynamic Loading and Unloading of Java Governance Tasks with Custom ClassLoader and XXL‑Job Integration
Architect's Guide
Architect's Guide
Feb 12, 2024 · Backend Development

Automating CRUD Operations with MyBatisPlus in Spring Boot

This article demonstrates how to automate CRUD operations in a Spring Boot application by leveraging MyBatisPlus, creating utility methods, a generic BaseController, pagination configuration, and extending it in concrete controllers, providing reusable code for rapid backend development.

MyBatisPlusRESTful APISpring Boot
0 likes · 9 min read
Automating CRUD Operations with MyBatisPlus in Spring Boot
Su San Talks Tech
Su San Talks Tech
Feb 12, 2024 · Backend Development

How to Warm Up Your Cache for High‑Concurrency Systems

Cache warming, a technique used in high‑concurrency systems to preload frequently accessed data before traffic spikes, improves hit rates, reduces latency, prevents cache breakdowns, and eases backend load, with methods ranging from startup loading and scheduled jobs to Spring Boot listeners, Redis tools, and Caffeine loaders.

Backend PerformanceCaffeineSpring Boot
0 likes · 10 min read
How to Warm Up Your Cache for High‑Concurrency Systems
Code Ape Tech Column
Code Ape Tech Column
Feb 11, 2024 · Backend Development

Comparison of Java Distributed Scheduling Frameworks: Elastic-Job vs X-Job and Other Options

This article examines why scheduled tasks are needed, outlines common Java scheduling frameworks for both single‑machine and distributed environments, and provides a detailed side‑by‑side comparison of Elastic‑Job, X‑Job, Quartz and other solutions, highlighting their architectures, clustering, sharding, monitoring, scaling and failure‑handling strategies.

BackendDistributed SchedulingElastic-Job
0 likes · 13 min read
Comparison of Java Distributed Scheduling Frameworks: Elastic-Job vs X-Job and Other Options
Su San Talks Tech
Su San Talks Tech
Feb 11, 2024 · Backend Development

How to Retrieve Async Return Values with Java FutureTask?

This article explains how to obtain return values from asynchronous Java methods using FutureTask, covering its AQS foundation, execution flow, get() behavior, and provides concrete source code examples for practical implementation.

AQSAsyncFuture
0 likes · 13 min read
How to Retrieve Async Return Values with Java FutureTask?
Java Tech Enthusiast
Java Tech Enthusiast
Feb 9, 2024 · Backend Development

Understanding PageHelper Issues and ThreadLocal in MyBatis Pagination

Unexpected duplicate registrations, truncated query results, and password‑reset SQL errors in a Java backend were traced to PageHelper’s ThreadLocal pagination state persisting across requests when startPage() is called without immediate query execution, so developers should ensure immediate execution or manually clear the ThreadLocal to prevent stale LIMIT clauses.

MyBatisThreadLocaljava
0 likes · 12 min read
Understanding PageHelper Issues and ThreadLocal in MyBatis Pagination
Architect's Guide
Architect's Guide
Feb 9, 2024 · Backend Development

How to Capture Exceptions from Java ThreadPool Tasks: submit vs execute and Three Solutions

This article explains why exceptions from tasks submitted to a Java ThreadPool using submit are not printed, how execute shows them, and presents three practical approaches—try‑catch within the task, a custom Thread.setDefaultUncaughtExceptionHandler, and overriding afterExecute—to reliably obtain and handle those exceptions.

ExecutorServiceFutureThreadPool
0 likes · 14 min read
How to Capture Exceptions from Java ThreadPool Tasks: submit vs execute and Three Solutions
Architect
Architect
Feb 7, 2024 · Backend Development

How to Secure Spring MVC APIs with Request/Response Encryption Using ControllerAdvice

This article walks through a real‑world scenario of adding symmetric encryption to Spring MVC endpoints for Android, iOS and H5 clients, detailing the requirements, code implementation of request and response interceptors, serialization pitfalls with enums and LocalDateTime, and the final solution using Jackson's ObjectMapper to keep encrypted and non‑encrypted responses consistent.

API SecurityControllerAdviceJackson
0 likes · 17 min read
How to Secure Spring MVC APIs with Request/Response Encryption Using ControllerAdvice
Java Tech Enthusiast
Java Tech Enthusiast
Feb 7, 2024 · Backend Development

How Does Spring’s @Autowired Really Work? A Deep Dive into Its Implementation

This article provides a comprehensive analysis of Spring's @Autowired annotation, covering its usage, the bean lifecycle stages where it operates, the core classes and methods that implement it, and a comparison with other injection annotations such as @Resource, all illustrated with runnable code examples.

Annotation ProcessingAutowiredbean-lifecycle
0 likes · 27 min read
How Does Spring’s @Autowired Really Work? A Deep Dive into Its Implementation
macrozheng
macrozheng
Feb 7, 2024 · Backend Development

Master Spring’s Essential Utility Classes: Assert, StringUtils, BeanUtils & More

This comprehensive guide walks you through the most useful Spring framework utility classes—including Assert, StringUtils, CollectionUtils, ObjectUtils, ClassUtils, BeanUtils, ReflectionUtils, Base64Utils, SerializationUtils, HttpStatus, and HtmlUtils—showing practical code examples and explaining when and how to use each to streamline Java backend development.

Spring FrameworkUtility Classesjava
0 likes · 15 min read
Master Spring’s Essential Utility Classes: Assert, StringUtils, BeanUtils & More
AI Illustrated Series
AI Illustrated Series
Feb 7, 2024 · Databases

Why Store IPv4 Addresses as UNSIGNED INT in MySQL? Space, Speed, and Queries Explained

Storing IPv4 addresses as a 32‑bit UNSIGNED INT instead of VARCHAR saves storage space, reduces index size, enables faster range queries, and leverages MySQL’s built‑in INET_ATON/INET_NTOA functions, while the trade‑offs include reduced readability and the need for conversion code, as demonstrated with benchmarks and Java examples.

INET_ATONIP address storageUNSIGNED INT
0 likes · 5 min read
Why Store IPv4 Addresses as UNSIGNED INT in MySQL? Space, Speed, and Queries Explained
Code Ape Tech Column
Code Ape Tech Column
Feb 7, 2024 · Backend Development

Dynamic Loading and Unloading of Data Governance Tasks in Java with Custom ClassLoader and XXL‑Job Integration

This article explains how to implement dynamic loading, upgrading, and unloading of data‑governance tasks in a Java Spring application using a custom URLClassLoader, integrate the tasks with the XXL‑Job scheduler, manage Spring bean registration, and persist configuration changes via local YAML or Nacos.

Dynamic Class LoadingNacosXXL-JOB
0 likes · 17 min read
Dynamic Loading and Unloading of Data Governance Tasks in Java with Custom ClassLoader and XXL‑Job Integration
Top Architect
Top Architect
Feb 6, 2024 · Backend Development

2023 State of the Java Ecosystem Report Highlights: Java 17 Adoption, JDK Vendor Shifts, and Containerization Trends

New Relic’s 2023 State of the Java Ecosystem report reveals a 430% surge in Java 17 adoption, declining use of older LTS releases, Amazon Corretto overtaking Oracle as the leading JDK provider, and a dominant shift toward containerized Java workloads, while the article also promotes a ChatGPT community and related services.

ContainerizationEcosystemJDK
0 likes · 7 min read
2023 State of the Java Ecosystem Report Highlights: Java 17 Adoption, JDK Vendor Shifts, and Containerization Trends
macrozheng
macrozheng
Feb 6, 2024 · Backend Development

Mastering LiteFlow: Build Elegant Java Workflow Engines for Complex Business Logic

This article introduces LiteFlow, a lightweight Java workflow engine, explains its core features, demonstrates rule syntax for serial, parallel, switch, and conditional orchestration, and provides step‑by‑step integration examples—including Maven dependencies, configuration, component implementation, and controller usage—to simplify complex business processes.

LiteFlowWorkflow Enginebackend-development
0 likes · 13 min read
Mastering LiteFlow: Build Elegant Java Workflow Engines for Complex Business Logic
Xuanwu Backend Tech Stack
Xuanwu Backend Tech Stack
Feb 6, 2024 · Fundamentals

How to Merge Two Sorted Arrays In‑Place Without Extra Space

This article walks through the classic interview problem of merging two non‑decreasing integer arrays directly into the first array, compares a naïve extra‑array solution with an optimal in‑place two‑pointer algorithm, and provides full Java implementations.

array mergingin-place algorithmjava
0 likes · 7 min read
How to Merge Two Sorted Arrays In‑Place Without Extra Space
Code Ape Tech Column
Code Ape Tech Column
Feb 6, 2024 · Backend Development

Comprehensive Guide to Spring Validation: Best Practices and Implementation Principles

This article provides an in‑depth tutorial on Spring Validation, covering simple usage, requestBody and requestParam/PathVariable validation, unified exception handling, advanced techniques such as group, nested, collection and custom validation, programmatic validation, fail‑fast mode, and the underlying implementation mechanisms within Spring MVC and Hibernate Validator.

BackendHibernate ValidatorSpring Boot
0 likes · 17 min read
Comprehensive Guide to Spring Validation: Best Practices and Implementation Principles
Su San Talks Tech
Su San Talks Tech
Feb 6, 2024 · Backend Development

Top 10 Online Development Tools to Boost Your Coding Efficiency

This article introduces ten powerful online utilities—including a Java Spring Initializr, code generators, JSON formatters, cron expression builders, regex testers, nginx formatters, and visual data tools—that streamline backend and frontend development workflows and dramatically improve productivity.

Backenddevelopment-toolsjava
0 likes · 7 min read
Top 10 Online Development Tools to Boost Your Coding Efficiency
Architect
Architect
Feb 5, 2024 · Backend Development

Applying the Strategy Pattern with Simple Factory in a Spring Boot Application

This article demonstrates how to apply the Strategy pattern combined with a simple factory in a Spring Boot application, showing interface definition, multiple arithmetic strategy implementations, a factory that registers beans, a service invoking strategies via a map, and a REST controller for testing, highlighting extensibility.

BackendFactorySpring Boot
0 likes · 8 min read
Applying the Strategy Pattern with Simple Factory in a Spring Boot Application
Selected Java Interview Questions
Selected Java Interview Questions
Feb 5, 2024 · Backend Development

Designing Business Operation Logging with AOP, SpEL, and Binlog: From Basic to Advanced Solutions

This article explores the evolution of business operation logging in a Java backend, starting from a simple AOP‑annotation approach, advancing to AOP combined with Spring Expression Language for richer context, and finally leveraging MySQL binlog with time‑window processing to achieve comprehensive, low‑intrusion audit trails.

BackendBinlogSpEL
0 likes · 15 min read
Designing Business Operation Logging with AOP, SpEL, and Binlog: From Basic to Advanced Solutions
macrozheng
macrozheng
Feb 5, 2024 · Backend Development

Inject Jar Version into Java Components with Insertable Annotation Processors

This article demonstrates how to create a custom insertable annotation processor in Java to automatically inject the jar version into component constants at compile time, eliminating manual updates and enabling Prometheus monitoring of library usage across versions.

AnnotationProcessorCompileTimeGradle
0 likes · 9 min read
Inject Jar Version into Java Components with Insertable Annotation Processors
Java Captain
Java Captain
Feb 4, 2024 · Fundamentals

Implementing an AVL Self-Balancing Binary Search Tree in Java

This article explains the concept of AVL self‑balancing binary search trees, outlines their height‑balancing property, and provides step‑by‑step Java code examples defining a Node class implementing Comparable and an AVLTree class with height, balance factor calculations, and rotation methods for insertion and deletion.

AVL treeBinary Search TreeData Structures
0 likes · 4 min read
Implementing an AVL Self-Balancing Binary Search Tree in Java
Java Captain
Java Captain
Feb 4, 2024 · Backend Development

Understanding and Implementing Idempotency in Backend Services with Java and Redis

This article explains the concept of idempotency, identifies which API requests are naturally idempotent, discusses why idempotency is essential for retries, asynchronous callbacks, and message queues, and provides a step‑by‑step Java Spring implementation using custom annotations, AOP, and Redis for token management.

BackendIdempotencyaop
0 likes · 9 min read
Understanding and Implementing Idempotency in Backend Services with Java and Redis
Java Captain
Java Captain
Feb 4, 2024 · Backend Development

Integrating XXL-JOB with SpringBoot for Distributed Task Scheduling

This article provides a step‑by‑step guide on integrating the lightweight distributed task scheduler XXL‑JOB into a SpringBoot application, covering prerequisite installations, Maven dependency configuration, property settings, JobHandler implementation, and registration to enable scalable and reliable job execution.

Distributed SchedulingSpringBootXXL-JOB
0 likes · 3 min read
Integrating XXL-JOB with SpringBoot for Distributed Task Scheduling
Java Captain
Java Captain
Feb 4, 2024 · Fundamentals

Understanding Aspect-Oriented Programming (AOP) with a Spring Example

Aspect-Oriented Programming (AOP) separates cross‑cutting concerns such as logging, transactions, and security from core business logic, improving modularity, maintainability, and reusability, and the article explains its concepts, benefits, implementation methods (dynamic/static proxies, dedicated languages) and provides a Spring AOP code example.

Aspect Oriented Programmingaopcross-cutting-concerns
0 likes · 4 min read
Understanding Aspect-Oriented Programming (AOP) with a Spring Example
Selected Java Interview Questions
Selected Java Interview Questions
Feb 4, 2024 · Backend Development

Dynamic Loading and Unloading of Governance Tasks in Java Using a Custom ClassLoader and XXL‑Job

This article explains how to design a plug‑in style architecture for data‑governance tasks by creating a custom URLClassLoader, dynamically loading JARs into a Spring context, registering and deregistering XXL‑Job handlers, updating configuration via YAML or Nacos, and finally unloading resources without restarting the service.

Configuration ManagementCustom ClassLoaderDynamic Class Loading
0 likes · 17 min read
Dynamic Loading and Unloading of Governance Tasks in Java Using a Custom ClassLoader and XXL‑Job
Code Ape Tech Column
Code Ape Tech Column
Feb 4, 2024 · Backend Development

Implementing a Dynamic Thread Pool with Nacos in Spring Boot

This article demonstrates how to create a dynamically configurable thread pool in a Spring Boot backend by using Nacos as a configuration center, covering Maven dependencies, YAML configuration files, Nacos data IDs, Java implementation with listeners, a REST controller for testing, and practical verification steps.

Dynamic ConfigurationNacosSpring Boot
0 likes · 11 min read
Implementing a Dynamic Thread Pool with Nacos in Spring Boot
Architect
Architect
Feb 2, 2024 · Backend Development

How DDD Transforms a Complex Pricing System: A Step‑by‑Step Architectural Guide

This article walks through the practical application of Domain‑Driven Design to a large‑scale pricing system, detailing business understanding, strategic and tactical design, context integration, layered architecture, and concrete Java implementations that illustrate how DDD improves modularity, testability, and maintainability.

Clean ArchitectureDDDDomain-Driven Design
0 likes · 14 min read
How DDD Transforms a Complex Pricing System: A Step‑by‑Step Architectural Guide
MaGe Linux Operations
MaGe Linux Operations
Feb 2, 2024 · Cloud Native

Connect Java Maven Apps to Kubernetes with kubeconfig & ServiceAccount

This guide demonstrates how to set up a Maven project with the Fabric8 Kubernetes Java client, configure minimal kubeconfig or ServiceAccount credentials, and use sample code to list namespaces, illustrating essential steps for connecting Java applications to a Kubernetes cluster with minimal configuration.

Fabric8KubernetesServiceAccount
0 likes · 6 min read
Connect Java Maven Apps to Kubernetes with kubeconfig & ServiceAccount
Java Tech Enthusiast
Java Tech Enthusiast
Feb 2, 2024 · Backend Development

Boost Your Elasticsearch Development with Easy-Es: A Complete Guide

This article introduces Easy-Es, an ORM framework built on Elasticsearch's RestHighLevelClient, explains its architecture and advantages, and provides step‑by‑step instructions—including Maven/Gradle setup, configuration, entity and mapper creation, and full CRUD test examples—so developers can quickly integrate powerful search capabilities into Spring Boot applications.

BackendEasy-EsElasticsearch
0 likes · 9 min read
Boost Your Elasticsearch Development with Easy-Es: A Complete Guide
Selected Java Interview Questions
Selected Java Interview Questions
Feb 2, 2024 · Backend Development

Comprehensive Guide to API Request Retry Mechanisms and Spring Boot Implementation

This article examines why API requests fail, explains the importance of retry mechanisms, compares linear, exponential and randomized back‑off strategies, discusses maximum attempt considerations and idempotency, and provides a detailed Spring Boot implementation using Spring Retry along with alternative approaches.

API RetryBackendIdempotency
0 likes · 21 min read
Comprehensive Guide to API Request Retry Mechanisms and Spring Boot Implementation
Code Ape Tech Column
Code Ape Tech Column
Feb 2, 2024 · Artificial Intelligence

Integrating Tess4J OCR into a Spring Boot Application

This guide walks through setting up a Spring Boot project, adding Tess4J dependencies, configuring language data, implementing an OCR service class, exposing REST endpoints for local and remote image recognition, and testing the OCR functionality end‑to‑end.

OCRREST APISpring Boot
0 likes · 6 min read
Integrating Tess4J OCR into a Spring Boot Application
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Feb 2, 2024 · Backend Development

Master Spring Security 5.7+ Config: From WebSecurityConfigurerAdapter to SecurityFilterChain

This guide explains how Spring Security configuration changed after version 5.7, covering the shift from WebSecurityConfigurerAdapter to SecurityFilterChain beans, multiple filter chain setup, in‑memory user definitions, custom authorization decisions, and shared authentication components, with full code examples.

AuthenticationAuthorizationSecurityFilterChain
0 likes · 7 min read
Master Spring Security 5.7+ Config: From WebSecurityConfigurerAdapter to SecurityFilterChain
Java Captain
Java Captain
Feb 1, 2024 · Backend Development

Differences and Advantages of Spring Boot Compared to the Traditional Spring Framework

Spring Boot, emerging as the preferred Java framework for microservices, differs from traditional Spring by offering automatic configuration, simplified Maven setup, embedded containers, production-ready features, and streamlined Spring MVC, which together accelerate development, ease deployment, and improve cloud integration compared to the more complex, slower-starting classic Spring.

FrameworkMicroservicesSpring Boot
0 likes · 4 min read
Differences and Advantages of Spring Boot Compared to the Traditional Spring Framework
Java Tech Enthusiast
Java Tech Enthusiast
Feb 1, 2024 · Fundamentals

Understanding Bloom Filters: Theory, Implementation, and Applications

Bloom filters are space‑efficient probabilistic structures that test set membership using multiple hash functions, offering fast, low‑memory checks with a controllable false‑positive rate, and can be implemented manually in Java, via Guava’s library, or deployed at scale with RedisBloom for distributed applications.

Data StructureGuavabloom-filter
0 likes · 14 min read
Understanding Bloom Filters: Theory, Implementation, and Applications
Java Tech Enthusiast
Java Tech Enthusiast
Feb 1, 2024 · Backend Development

Implementing a Robust Redis Distributed Lock with Spring Boot

The article shows how to build a reliable Redis‑based distributed lock in a Spring Boot 2.7 application by storing a unique UUID token, acquiring the lock with SET NX PX, releasing it atomically via a Lua script, and providing a clean Lock interface, factory component, and JUnit example.

LuaSpring Bootdistributed-lock
0 likes · 13 min read
Implementing a Robust Redis Distributed Lock with Spring Boot
Architecture Digest
Architecture Digest
Feb 1, 2024 · Backend Development

Best Practices for Designing the Controller Layer in Spring Boot: Unified Response, Validation, and Exception Handling

This article explains how to build a clean and maintainable Spring Boot controller layer by separating responsibilities, unifying response structures, applying comprehensive parameter validation (including custom rules), and implementing centralized exception handling to keep business logic concise and robust.

ControllerException HandlingSpring Boot
0 likes · 18 min read
Best Practices for Designing the Controller Layer in Spring Boot: Unified Response, Validation, and Exception Handling
Architect's Guide
Architect's Guide
Feb 1, 2024 · Fundamentals

Java 8 Functional Interfaces: Function, Supplier, Consumer, Runnable and Practical Usage Patterns

This article introduces Java 8 functional interfaces—including Function, Supplier, Consumer, and Runnable—explains their signatures, demonstrates how they can replace traditional if‑else statements for exception handling, branch processing, and null checks, and provides concrete code examples and usage tips.

BackendFunctionalInterfaceLambda
0 likes · 7 min read
Java 8 Functional Interfaces: Function, Supplier, Consumer, Runnable and Practical Usage Patterns
Su San Talks Tech
Su San Talks Tech
Feb 1, 2024 · Backend Development

Boost Your Java Backend: Essential Spring Utility Classes Explained

This article introduces the most useful Spring framework utility classes—including Assert, StringUtils, CollectionUtils, ObjectUtils, ClassUtils, BeanUtils, ReflectionUtils, Base64Utils, SerializationUtils, HttpStatus, and HtmlUtils—providing clear explanations, code examples, and practical tips to improve development efficiency and code quality.

Utility Classesbackend-developmentjava
0 likes · 16 min read
Boost Your Java Backend: Essential Spring Utility Classes Explained
Architect
Architect
Jan 31, 2024 · Backend Development

How to Build Distributed Multi‑Rule Rate Limiting with Redis and Spring AOP

This article explains how to implement multi‑rule rate limiting in a distributed Java application using Redis, covering String‑based counters, Zset timestamp storage, Lua scripts for atomic checks, custom @RateLimiter annotations, key generation logic, and an AOP interceptor that enforces the limits.

Distributed SystemsLuaaop
0 likes · 12 min read
How to Build Distributed Multi‑Rule Rate Limiting with Redis and Spring AOP
Top Architect
Top Architect
Jan 31, 2024 · Backend Development

Java 8 Functional Interfaces and Stream Operations: A Comprehensive Guide

This article explains Java 8's lambda expressions and functional interfaces, demonstrates common functional interfaces with code examples, and shows how to use Stream API operations such as filter, map, flatMap, collect, max/min, count, reduce, and advanced collectors for efficient backend development.

Functional InterfacesLambdaStreams
0 likes · 14 min read
Java 8 Functional Interfaces and Stream Operations: A Comprehensive Guide
JD Retail Technology
JD Retail Technology
Jan 31, 2024 · Databases

Low‑Cost Database Stability Improvement and Lightweight Table Partitioning Using MyBatis Interceptor

This article explains how to use a MyBatis interceptor to cheaply improve database stability for high‑growth tables, compares common archiving and sharding solutions, and provides a complete, code‑driven implementation of date‑based horizontal sharding with binlog‑driven double‑write to handle critical‑point data continuity.

BinlogInterceptorMyBatis
0 likes · 11 min read
Low‑Cost Database Stability Improvement and Lightweight Table Partitioning Using MyBatis Interceptor
Selected Java Interview Questions
Selected Java Interview Questions
Jan 31, 2024 · Backend Development

Large File Upload, Chunked Upload, Resume and Instant Upload with Spring Boot and JavaScript

This article demonstrates how to implement small file uploads, large file chunked uploads, breakpoint resume, and instant upload using Spring Boot 3.1.2 on the backend and native JavaScript with spark‑md5 on the frontend, covering configuration, code examples, and practical considerations.

BackendSpring Bootchunked upload
0 likes · 15 min read
Large File Upload, Chunked Upload, Resume and Instant Upload with Spring Boot and JavaScript
Architecture Digest
Architecture Digest
Jan 31, 2024 · Fundamentals

Installing and Using the CheckStyle Plugin in IntelliJ IDEA

This guide explains how to import, configure, and apply the CheckStyle plugin in IntelliJ IDEA, covering common annotation, formatting, naming, logical, and import‑order issues, and provides step‑by‑step screenshots to help Java developers enforce coding standards efficiently.

IntelliJ IDEAcheckstylecode style
0 likes · 4 min read
Installing and Using the CheckStyle Plugin in IntelliJ IDEA
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Jan 31, 2024 · Backend Development

Understanding Java JVM Garbage Collectors: From Serial to Shenandoah

This article explains the main Java JVM garbage collectors—including Serial, Parallel, CMS, G1, ZGC, Epsilon, and Shenandoah—detailing their architectures, pause characteristics, suitable workloads, and key advantages, helping developers choose the right collector for different application sizes and latency requirements.

BackendGarbage CollectionJVM
0 likes · 7 min read
Understanding Java JVM Garbage Collectors: From Serial to Shenandoah
Code Ape Tech Column
Code Ape Tech Column
Jan 31, 2024 · Backend Development

Custom Spring Boot Packaging with External Dependencies Using Maven Plugins

This article explains how to create a Spring Boot fat‑jar that externalizes its dependencies by configuring the spring‑boot‑maven‑plugin and maven‑assembly‑plugin to produce a ZIP layout, then uses the PropertiesLauncher with loader.path to load libraries from a separate libs directory at runtime.

Spring Bootbackend-developmentjava
0 likes · 6 min read
Custom Spring Boot Packaging with External Dependencies Using Maven Plugins
Selected Java Interview Questions
Selected Java Interview Questions
Jan 30, 2024 · Backend Development

Using ProGuard, Xjar, and ClassFinal to Obfuscate and Encrypt Java JARs in Spring Boot Projects

This article explains how to protect Java server-side code from decompilation by applying ProGuard shrinking/obfuscation and Xjar/ClassFinal encryption, provides detailed Maven plugin configurations, sample pom.xml snippets, command‑line launch options, and demonstrates the resulting protected JARs with screenshots.

ObfuscationProGuardSpring Boot
0 likes · 22 min read
Using ProGuard, Xjar, and ClassFinal to Obfuscate and Encrypt Java JARs in Spring Boot Projects
Top Architect
Top Architect
Jan 30, 2024 · Backend Development

Advanced Backend Asynchronous Execution and Configuration Techniques in Spring Boot

This article explains multiple backend optimization methods for Spring Boot, including asynchronous execution with @Async and CompletableFuture, increasing embedded Tomcat connection limits, using @ComponentScan, switching to Undertow, applying BufferedWriter, employing DeferredResult, and intercepting async calls with AsyncHandlerInterceptor, accompanied by concrete code examples.

AsynchronousCompletableFutureSpring Boot
0 likes · 12 min read
Advanced Backend Asynchronous Execution and Configuration Techniques in Spring Boot
Architect's Guide
Architect's Guide
Jan 30, 2024 · Backend Development

Understanding Nacos Architecture and Service Registration in Spring Cloud

This article explains the Nacos architecture, the principles of service registration, how Spring Cloud integrates with Nacos for automatic registration, the implementation details of NacosServiceRegistry, heartbeat mechanisms, registration via Open API/SDK, service address querying, and dynamic service discovery using HostReactor.

BackendNacosSpring Cloud
0 likes · 7 min read
Understanding Nacos Architecture and Service Registration in Spring Cloud
Java Architect Essentials
Java Architect Essentials
Jan 30, 2024 · Backend Development

Using ProGuard for Java Code Obfuscation in Maven Projects

This article explains how to protect Java applications from decompilation by configuring a ProGuard file and adding the ProGuard Maven plugin, then building the project to generate an obfuscated JAR, complete with step‑by‑step instructions and sample configuration code.

BackendObfuscationProGuard
0 likes · 5 min read
Using ProGuard for Java Code Obfuscation in Maven Projects
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 30, 2024 · Backend Development

Master Spring Boot Bean Lifecycle: Init, Destroy, Scopes & Advanced Tricks

This article explains how to control Spring bean initialization and destruction using interfaces and annotations, inject prototype beans into singleton controllers, implement various BeanPostProcessor extensions, dynamically register beans, use @Import, Runner interfaces, global exception handling, custom type conversion, BeanFactoryAware, web interceptors, and default AOP proxy creation.

Spring Bootbackend-developmentbean-lifecycle
0 likes · 9 min read
Master Spring Boot Bean Lifecycle: Init, Destroy, Scopes & Advanced Tricks
Architect
Architect
Jan 29, 2024 · Backend Development

How to Implement Robust Request Debounce in Java Backend with Redis and Redisson

This article explains why request debounce is essential for preventing duplicate submissions, outlines which APIs need protection, and walks through two distributed‑lock solutions—shared Redis cache and Redisson—showing concrete annotations, key‑generation logic, and Spring‑AOP code with full test results.

BackendDebouncedistributed-lock
0 likes · 19 min read
How to Implement Robust Request Debounce in Java Backend with Redis and Redisson
Top Architect
Top Architect
Jan 29, 2024 · Backend Development

Implementing Interface Rate Limiting with Spring Interceptor and Redis

This article demonstrates how to implement API request throttling in a Spring Boot application using a custom Interceptor and Redis, covering basic principles, configuration, custom annotations, reflection for per‑endpoint limits, handling path parameters, and addressing timing logic nuances.

Interceptorjavarate limiting
0 likes · 21 min read
Implementing Interface Rate Limiting with Spring Interceptor and Redis
IT Services Circle
IT Services Circle
Jan 29, 2024 · Backend Development

Reflections on Two Years of Java Development: From a Large State-owned Enterprise to a Small Startup and Beyond

The author recounts a two‑year journey as a Java developer, describing experiences across three companies, the challenges of CRUD‑focused work, the need to learn front‑end skills, and insights on balancing technical growth with business understanding in both large and small firms.

CRUDbackend-developmentfull-stack
0 likes · 9 min read
Reflections on Two Years of Java Development: From a Large State-owned Enterprise to a Small Startup and Beyond
macrozheng
macrozheng
Jan 29, 2024 · Backend Development

How Easy-Es Transforms Elasticsearch Operations in Java: A Step‑by‑Step Guide

This article introduces Easy-Es, an Elasticsearch ORM that mimics MyBatis‑Plus syntax, explains its key features, shows how to integrate it into a Spring Boot project, and provides comprehensive code examples for index management, CRUD, simple and advanced product searches, recommendation and aggregation functionalities.

Easy-EsElasticsearchORM
0 likes · 18 min read
How Easy-Es Transforms Elasticsearch Operations in Java: A Step‑by‑Step Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 29, 2024 · Backend Development

Why Spring Transactions Fail and How to Fix Them

This article examines common scenarios that cause Spring transaction management to fail—such as non‑public methods, swallowed exceptions, incorrect rollback settings, self‑invocation, final methods, wrong propagation, asynchronous threads, unsupported database engines, and misuse of @Transactional—and provides concrete code‑level solutions to ensure reliable transactional behavior.

backend-developmentjavaspring
0 likes · 10 min read
Why Spring Transactions Fail and How to Fix Them
Architecture Digest
Architecture Digest
Jan 28, 2024 · Backend Development

Implementing Interface Rate Limiting with Spring Interceptor and Redis

This article demonstrates how to build a Spring‑based API rate‑limiting solution using an Interceptor and Redis, covering the basic principle, project setup, code implementation, custom annotation with reflection for flexible limits, handling path‑parameter keys, real‑IP acquisition, and practical considerations for production use.

BackendInterceptorjava
0 likes · 18 min read
Implementing Interface Rate Limiting with Spring Interceptor and Redis
Architect's Guide
Architect's Guide
Jan 27, 2024 · Backend Development

Optimizing Thread Pool Size for CPU‑Bound and I/O‑Bound Tasks in Java

This article explains the differences between CPU‑intensive and I/O‑intensive workloads, provides optimization strategies such as multithreading, caching, and load balancing, and presents Java code examples and formulas for calculating the optimal thread‑pool size based on core count, target CPU utilization, and blocking factors.

CPU BoundI/O Boundconcurrency
0 likes · 12 min read
Optimizing Thread Pool Size for CPU‑Bound and I/O‑Bound Tasks in Java
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 27, 2024 · Backend Development

Analyzing the SpringBoot run Method: From Startup to Execution

This article provides a comprehensive analysis of SpringBoot's run method, explaining its overall flow, the creation of SpringApplication objects, argument parsing, environment preparation, context refresh, and key extension points, while offering code examples to help developers understand the startup process.

Spring FrameworkSpringBootbackend-development
0 likes · 9 min read
Analyzing the SpringBoot run Method: From Startup to Execution
Architect
Architect
Jan 26, 2024 · Backend Development

Dynamic Hot‑Pluggable AOP in Spring: Managing Advice at Runtime

This article explains how to implement a hot‑pluggable AOP mechanism in Spring by dynamically adding or removing Advice through custom endpoints and event listeners, covering core concepts, implementation code, a demonstration, and best‑practice considerations for backend developers.

AdviceDynamic Pluginaop
0 likes · 10 min read
Dynamic Hot‑Pluggable AOP in Spring: Managing Advice at Runtime