Tagged articles
1744 articles
Page 9 of 18
Top Architect
Top Architect
May 10, 2023 · Backend Development

Implementing a Custom @Autowired-like Annotation in Spring

This article demonstrates how to create a simple custom annotation that mimics Spring's @Autowired functionality by defining a new annotation, a BeanPostProcessor, configuring beans in XML, and wiring everything together in a test class to show the injection working at runtime.

BackendBeanPostProcessorCustom Annotation
0 likes · 8 min read
Implementing a Custom @Autowired-like Annotation in Spring
Alibaba Cloud Developer
Alibaba Cloud Developer
May 6, 2023 · Backend Development

Why Spring Throws Circular Dependency Errors and How to Fix Them

This article explains the causes of Spring circular dependency exceptions, details how Spring's three‑level cache and AOP proxy mechanisms contribute to the problem, and provides practical solutions such as using @Lazy, refactoring code, and ensuring a single AutoProxyCreator to prevent bean creation failures.

Bean Creationaopcircular-dependency
0 likes · 22 min read
Why Spring Throws Circular Dependency Errors and How to Fix Them
Top Architect
Top Architect
May 5, 2023 · Backend Development

How to Register Beans in the Spring Container: Five Common Methods

This article explains five ways to add a bean to the Spring IoC container—including @Configuration + @Bean, @Component + @ComponentScan, various @Import techniques, FactoryBean, and BeanDefinitionRegistryPostProcessor—provides complete code examples for each, and concludes with a summary and related promotional notes.

backend-developmentbeandependency-injection
0 likes · 12 min read
How to Register Beans in the Spring Container: Five Common Methods
Top Architect
Top Architect
Apr 27, 2023 · Backend Development

Understanding Spring Transaction Propagation, Rollback, and @Transactional Usage

This article explains Spring's transaction propagation options, rollback mechanisms, the limitations of self‑invocation within @Transactional methods, and how to correctly use AOP proxies such as AopContext.currentProxy() and @EnableAspectJAutoProxy to ensure transactional behavior in Java backend applications.

Backendjavapropagation
0 likes · 10 min read
Understanding Spring Transaction Propagation, Rollback, and @Transactional Usage
Java Backend Technology
Java Backend Technology
Apr 26, 2023 · Backend Development

Refactor Spring Controllers for Unified Responses and Robust Validation

This article explains how to redesign Spring MVC controllers by introducing a unified Result wrapper, using ResponseBodyAdvice for automatic response packaging, applying JSR‑303 validation on DTOs and method parameters, and handling custom exceptions globally to produce consistent API outputs.

Controllerjavaresponsebodyadvice
0 likes · 17 min read
Refactor Spring Controllers for Unified Responses and Robust Validation
macrozheng
macrozheng
Apr 25, 2023 · Backend Development

Refactor Spring Controllers for Unified Responses and Robust Validation

This article explains why traditional Spring MVC Controllers become cumbersome, demonstrates how to unify response structures with a Result wrapper, leverages ResponseBodyAdvice for automatic packaging, resolves String conversion issues, and shows best‑practice parameter validation using JSR‑303, custom validators, and global exception handling to keep controller code clean and maintainable.

Controllerjavaresponsebodyadvice
0 likes · 20 min read
Refactor Spring Controllers for Unified Responses and Robust Validation
Code Ape Tech Column
Code Ape Tech Column
Apr 25, 2023 · Backend Development

Advanced Java Multithreading: From Fundamentals to High‑Performance Transactional Scenarios

This article explores Java multithreading concepts, JVM safety tools, thread creation methods, coordination mechanisms, and practical scenarios such as parallel data aggregation, for‑loop conversion, map‑based processing, and multi‑threaded transaction handling, providing code examples and performance tips for backend developers.

CompletableFutureThreadPoolconcurrency
0 likes · 22 min read
Advanced Java Multithreading: From Fundamentals to High‑Performance Transactional Scenarios
Su San Talks Tech
Su San Talks Tech
Apr 25, 2023 · Backend Development

Unlocking Spring’s Design Patterns: From Proxy to Adapter Explained

This article explores how Spring implements classic design patterns—Proxy, Strategy, Decorator, Singleton, Simple Factory, Factory Method, Observer, Template, and Adapter—detailing their purpose, core code snippets, and the way Spring leverages them to provide flexible, extensible, and maintainable backend functionality.

BackendDesign Patternsaop
0 likes · 13 min read
Unlocking Spring’s Design Patterns: From Proxy to Adapter Explained
IT Xianyu
IT Xianyu
Apr 24, 2023 · Backend Development

Improving Spring Controller Layer: Unified Response Structure, Validation, and Exception Handling

This article explains how to refactor a Spring MVC Controller by introducing a unified response wrapper, leveraging ResponseBodyAdvice for automatic packaging, applying JSR‑303 validation for @RequestBody, @PathVariable and @RequestParam parameters, creating custom validation annotations, and handling business and system exceptions consistently.

ControllerException Handlingjava
0 likes · 15 min read
Improving Spring Controller Layer: Unified Response Structure, Validation, and Exception Handling
Top Architect
Top Architect
Apr 24, 2023 · Backend Development

Understanding the Spring Bean Lifecycle and Its Core Stages

This article explains the complete lifecycle of a Spring bean—including creation, merged BeanDefinition processing, factory exposure, property population, initialization, and destruction—while illustrating the underlying source‑code mechanisms and how Spring resolves constructors, handles circular dependencies, and integrates AOP and post‑processors.

BackendSpring Frameworkbean-lifecycle
0 likes · 16 min read
Understanding the Spring Bean Lifecycle and Its Core Stages
Su San Talks Tech
Su San Talks Tech
Apr 24, 2023 · Backend Development

Mastering Spring @EventListener: From Demo to Deep Debugging

This article walks through building a Spring @EventListener demo, explains how to decouple registration logic, shows step‑by‑step debugging of the event‑listener infrastructure, and explores the internal mechanisms that register and invoke listeners during application startup and runtime.

ApplicationEventBackendEventListener
0 likes · 14 min read
Mastering Spring @EventListener: From Demo to Deep Debugging
Java Architect Essentials
Java Architect Essentials
Apr 23, 2023 · Backend Development

Comprehensive Guide to Spring Validation: Simple to Advanced Usage and Implementation Principles

This article provides a detailed tutorial on Spring Validation, covering basic dependency setup, requestBody and requestParam/PathVariable validation, advanced techniques such as group, nested, collection and custom validation, programmatic validation, fail‑fast mode, the difference between @Valid and @Validated, and the underlying implementation mechanisms within Spring MVC.

APIHibernate ValidatorSpring Boot
0 likes · 18 min read
Comprehensive Guide to Spring Validation: Simple to Advanced Usage and Implementation Principles
Selected Java Interview Questions
Selected Java Interview Questions
Apr 23, 2023 · Backend Development

Implementing Interface Rate Limiting with Spring Interceptor and Redis (Demo)

This article demonstrates a step‑by‑step implementation of API request throttling in a Spring backend using an Interceptor and Redis, covering the underlying principle, configurable limits, custom annotations, reflection‑based flexibility, and practical considerations such as path parameters and real‑IP handling.

Interceptorannotationjava
0 likes · 16 min read
Implementing Interface Rate Limiting with Spring Interceptor and Redis (Demo)
IT Xianyu
IT Xianyu
Apr 19, 2023 · Databases

Robustdb: A Lightweight Read‑Write Splitting Solution for Java Applications

This article introduces Robustdb, a compact open‑source read‑write separation framework built with about ten classes and two thousand lines of code, explains its architecture, routing logic, method‑level transaction handling, dynamic data‑source management, and performance advantages over existing solutions like Atlas.

DataSourcedatabase routingjava
0 likes · 15 min read
Robustdb: A Lightweight Read‑Write Splitting Solution for Java Applications
Top Architect
Top Architect
Apr 18, 2023 · Backend Development

Spring Dynamic Configuration, Project Packaging, and Deployment for Java Backend Applications

This article explains how to use Spring's profile‑specific configuration files, package a multi‑module Java project with Maven or IDEA, and deploy the resulting JAR on a Linux server by installing JDK, setting environment variables, and starting the application in foreground or background.

DeploymentDynamic Configurationbackend-development
0 likes · 10 min read
Spring Dynamic Configuration, Project Packaging, and Deployment for Java Backend Applications
Selected Java Interview Questions
Selected Java Interview Questions
Apr 18, 2023 · Backend Development

Understanding the Spring Bean Lifecycle: Creation, Initialization, Usage, and Destruction

This article explains the complete Spring bean lifecycle—including creation, property filling, initialization, usage, and destruction—detailing how Spring manages object creation, dependency injection, AOP proxy generation, and lifecycle callbacks through various internal phases and extension points.

aopbean-lifecycledependency-injection
0 likes · 15 min read
Understanding the Spring Bean Lifecycle: Creation, Initialization, Usage, and Destruction
Top Architect
Top Architect
Apr 17, 2023 · Backend Development

Designing a Unified API Response Structure with Custom Annotations and Interceptors

This article explains how to build a clean, maintainable backend API response format by defining a standard JSON wrapper, categorizing status codes, using a Result class with static helpers, and automatically applying the wrapper through a custom @ResponseResult annotation, interceptor, and ResponseBodyAdvice in a Spring‑based service.

APIBackendResponse Design
0 likes · 8 min read
Designing a Unified API Response Structure with Custom Annotations and Interceptors
Java High-Performance Architecture
Java High-Performance Architecture
Apr 17, 2023 · Backend Development

Master Dynamic Multi‑DataSource Switching and Transaction Management in Spring

This article explains how to dynamically manage multiple Spring data sources, switch between them at runtime, and implement custom multi‑database transaction handling, covering both configuration‑file and database‑table approaches, with code examples and AOP techniques for seamless integration.

DataSourcedynamic routingmulti-database
0 likes · 16 min read
Master Dynamic Multi‑DataSource Switching and Transaction Management in Spring
Selected Java Interview Questions
Selected Java Interview Questions
Apr 14, 2023 · Backend Development

Improving Spring Controller Layer: Unified Response Structure, Validation, and Exception Handling

This article explains how to refactor a Spring MVC Controller layer by defining its responsibilities, introducing a unified response format, using ResponseBodyAdvice for automatic wrapping, applying JSR‑303 validation for request parameters, and implementing custom exceptions with centralized handling to achieve cleaner, more maintainable backend code.

Controllerexceptionhandlingresponsebodyadvice
0 likes · 17 min read
Improving Spring Controller Layer: Unified Response Structure, Validation, and Exception Handling
Selected Java Interview Questions
Selected Java Interview Questions
Apr 13, 2023 · Backend Development

Analysis of Spring Bean Instantiation Strategies in AbstractAutowireCapableBeanFactory

This article dissects the core bean creation logic of Spring's AbstractAutowireCapableBeanFactory, detailing how createBeanInstance delegates to obtainFromSupplier, instantiateUsingFactoryMethod, autowireConstructor, and fallback default constructors, while explaining the role of Supplier, ConstructorResolver, argument resolution, and caching mechanisms.

BeanFactoryConstructor InjectionFactory Method
0 likes · 34 min read
Analysis of Spring Bean Instantiation Strategies in AbstractAutowireCapableBeanFactory
Java Backend Technology
Java Backend Technology
Apr 13, 2023 · Backend Development

Mastering Unified Exception Handling in Spring Boot: Clean Code, Better Errors

This article explains how to replace scattered try‑catch blocks in Java services with a clean, unified exception handling approach using Spring’s @ControllerAdvice, custom Assert interfaces, enum‑based error codes, and standardized response objects to improve readability, maintainability, and internationalized error reporting.

AssertException HandlingUnified Error
0 likes · 21 min read
Mastering Unified Exception Handling in Spring Boot: Clean Code, Better Errors
Top Architect
Top Architect
Apr 12, 2023 · Backend Development

Dynamic Multi‑DataSource Management and Transaction Handling in Spring

This article explains how to dynamically manage multiple data sources and ensure transactional consistency in Spring applications by extending AbstractRoutingDataSource, using configuration‑file or database‑table approaches, applying AOP for datasource switching, and implementing custom multi‑database transaction management.

DynamicDataSourceMultiDatabaseTransactionManagement
0 likes · 16 min read
Dynamic Multi‑DataSource Management and Transaction Handling in Spring
HomeTech
HomeTech
Apr 11, 2023 · Backend Development

Applying Finite State Machines with Spring Statemachine and Squirrel-foundation in Java

This article explains the concept of finite state machines, outlines scenarios where they are beneficial, compares Spring Statemachine and Squirrel-foundation implementations, and provides detailed configuration, guard/action code, persistence, testing, and practical usage tips for managing complex business workflows in Java backend services.

springsquirrel-foundationstate machine
0 likes · 17 min read
Applying Finite State Machines with Spring Statemachine and Squirrel-foundation in Java
JD Retail Technology
JD Retail Technology
Apr 11, 2023 · Backend Development

Understanding the Architecture and Configuration of JD's JSF RPC Framework

This article explains the design and implementation of JD's JSF RPC framework, detailing the architecture, XML configuration of providers and consumers, Spring namespace handling, service registration, server startup, client initialization, load balancing, and the overall workflow from provider exposure to consumer invocation.

BackendConfigurationJSF
0 likes · 12 min read
Understanding the Architecture and Configuration of JD's JSF RPC Framework
Top Architect
Top Architect
Apr 10, 2023 · Databases

Dynamic Multi‑DataSource Management and Transaction Handling in Spring

The article explains how to dynamically manage multiple data sources and ensure transaction consistency in Spring applications by extending AbstractRoutingDataSource, using configuration‑file or database‑table approaches, and applying AOP‑based switching with custom transaction management.

DynamicDataSourceabstractroutingdatasourcejava
0 likes · 16 min read
Dynamic Multi‑DataSource Management and Transaction Handling in Spring
Selected Java Interview Questions
Selected Java Interview Questions
Apr 9, 2023 · Backend Development

Using Lombok @RequiredArgsConstructor to Replace @Autowired and @Resource in Spring Dependency Injection

The article explains Spring's three dependency injection methods, highlights the drawbacks of field injection, recommends constructor injection, and demonstrates how Lombok's @RequiredArgsConstructor can generate the required constructor to eliminate @Autowired and @Resource annotations, simplifying code and preventing NullPointerExceptions.

Constructor InjectionLombokbackend-development
0 likes · 4 min read
Using Lombok @RequiredArgsConstructor to Replace @Autowired and @Resource in Spring Dependency Injection
Code Ape Tech Column
Code Ape Tech Column
Apr 8, 2023 · Backend Development

Understanding Spring Dependency Injection and Lombok @RequiredArgsConstructor

This article explains Spring's three dependency injection methods—field, constructor, and setter injection—highlights the advantages of constructor injection for avoiding null pointers and circular dependencies, and demonstrates how Lombok's @RequiredArgsConstructor can simplify bean wiring in Java backend development.

BackendConstructor InjectionLombok
0 likes · 6 min read
Understanding Spring Dependency Injection and Lombok @RequiredArgsConstructor
Code Ape Tech Column
Code Ape Tech Column
Apr 7, 2023 · Backend Development

Dynamic Multi-DataSource Management and Transaction Handling in Spring

This article explains how to dynamically manage multiple data sources and ensure transaction consistency across them in Spring applications, covering both configuration‑file and database‑table approaches, custom AOP switching, and a bespoke multi‑database transaction mechanism.

backend-developmentdynamic-datasourcejava
0 likes · 14 min read
Dynamic Multi-DataSource Management and Transaction Handling in Spring
Java Architect Essentials
Java Architect Essentials
Apr 4, 2023 · Backend Development

14 Essential Java Backend Development Practices for Clean and Maintainable Code

This article shares fourteen practical Java backend development habits—including using @ConfigurationProperties, replacing @Autowired with @RequiredArgsConstructor, modularizing code, throwing exceptions instead of returning error flags, minimizing unnecessary database calls, avoiding null returns, reducing if‑else chains, and leveraging IDE features—to help developers write cleaner, more robust, and easier‑to‑maintain code.

Configurationbest practicescode quality
0 likes · 8 min read
14 Essential Java Backend Development Practices for Clean and Maintainable Code
Su San Talks Tech
Su San Talks Tech
Apr 3, 2023 · Backend Development

Mastering MapStruct: Fast, Type‑Safe Java Bean Mapping with Real‑World Examples

This article introduces MapStruct, a compile‑time Java bean‑mapping code generator, explains its core concepts, shows step‑by‑step examples—including Maven dependencies, entity and DTO definitions, mapper interfaces, custom conversions, and advanced configurations—while comparing its performance to other copy utilities and highlighting deep‑copy behavior.

bean-mappingcode-generationjava
0 likes · 13 min read
Mastering MapStruct: Fast, Type‑Safe Java Bean Mapping with Real‑World Examples
macrozheng
macrozheng
Mar 31, 2023 · Backend Development

Implementing Multi‑Tenant Isolation in MyBatis‑Plus: A Step‑by‑Step Guide

Learn how to implement multi‑tenant isolation in a SaaS application using MyBatis‑Plus, covering database schema design, Maven dependencies, configuration of pagination interceptors, tenant handler logic, request‑header propagation, async thread handling, selective filtering, and common pitfalls with bean copying and join queries.

javamulti-tenantmybatis-plus
0 likes · 9 min read
Implementing Multi‑Tenant Isolation in MyBatis‑Plus: A Step‑by‑Step Guide
Alibaba Cloud Developer
Alibaba Cloud Developer
Mar 31, 2023 · Backend Development

How Alibaba’s Custom Three‑Layer Distribution Boosts Scheduled Task Efficiency

This article walks through Alibaba's evolution from single‑machine scheduled jobs to a customized three‑layer distributed task framework, detailing classifications, Spring scheduling examples, batch processing integration, cluster distribution mechanics, and optimization techniques that maximize resource utilization and achieve smooth, balanced task execution.

AntschedulerDistributed Systemsspring
0 likes · 16 min read
How Alibaba’s Custom Three‑Layer Distribution Boosts Scheduled Task Efficiency
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Mar 27, 2023 · Backend Development

Master Spring Transaction Abstraction: Platform & Reactive Managers

This article explains Spring's transaction abstraction, detailing the roles of PlatformTransactionManager and ReactiveTransactionManager, the TransactionDefinition attributes, TransactionStatus interface, resource synchronization techniques, declarative transaction management with AOP, rollback rules, and provides XML and Java configuration examples for both JDBC and Hibernate environments.

Declarative Transactionsbackend-developmentjava
0 likes · 16 min read
Master Spring Transaction Abstraction: Platform & Reactive Managers
macrozheng
macrozheng
Mar 24, 2023 · Backend Development

Unlock the Full Power of Spring’s @Autowired: Advanced Techniques and Common Pitfalls

This article explores Spring’s @Autowired annotation in depth, covering default wiring, handling multiple beans, using @Qualifier and @Primary, various injection targets, advanced collection injection, common pitfalls, and differences from @Resource, providing practical code examples and solutions for real‑world projects.

Autowireddependency-injectionjava
0 likes · 15 min read
Unlock the Full Power of Spring’s @Autowired: Advanced Techniques and Common Pitfalls
Sohu Tech Products
Sohu Tech Products
Mar 22, 2023 · Backend Development

Understanding @Autowired Injection Issues and Alternative Approaches in Spring

The article explains common problems with Spring's @Autowired injection, compares it with @Resource, and presents alternative injection methods—including setter, constructor, and Lombok-based approaches—while providing code examples and best‑practice recommendations for reliable bean initialization.

AutowiredConstructor InjectionLombok
0 likes · 5 min read
Understanding @Autowired Injection Issues and Alternative Approaches in Spring
Top Architect
Top Architect
Mar 21, 2023 · Backend Development

Understanding @Autowired vs @Resource and Injection Methods in Spring

The article explains common pitfalls of using Spring's @Autowired, compares it with the standard @Resource annotation, and demonstrates various injection techniques—including field, setter, constructor, and Lombok-based constructor injection—through detailed code examples and best‑practice recommendations.

AutowiredBackendLombok
0 likes · 6 min read
Understanding @Autowired vs @Resource and Injection Methods in Spring
Su San Talks Tech
Su San Talks Tech
Mar 19, 2023 · Backend Development

Master 8 Ways to Implement Asynchronous Programming in Java

This article explains why asynchronous execution is essential for tasks like sending SMS or emails, defines async concepts, and walks through eight practical Java implementations—including Thread, Future, CompletableFuture, Spring @Async, ApplicationEvent, message queues, ThreadUtil, and Guava ListenableFuture—complete with code examples and usage tips.

AsynchronousCompletableFutureFuture
0 likes · 14 min read
Master 8 Ways to Implement Asynchronous Programming in Java
Architect's Guide
Architect's Guide
Mar 18, 2023 · Backend Development

Eight Ways to Implement Asynchronous Execution in Java

This article introduces eight common methods for implementing asynchronous execution in Java, including threads, Future, CompletableFuture, Spring @Async, ApplicationEvent, message queues, Hutool ThreadUtil, and Guava ListenableFuture, and provides code examples and usage considerations.

AsynchronousCompletableFutureFuture
0 likes · 14 min read
Eight Ways to Implement Asynchronous Execution in Java
macrozheng
macrozheng
Mar 17, 2023 · Backend Development

Java Backend Nightmares: Async Misuse, Bad Practices, and Lock Bugs

The author inherited a poorly engineered Java backend project riddled with massive methods, missing abstractions, unsafe async handling with Thread.sleep, ineffective @Async annotations, and a broken distributed lock implementation, highlighting how such technical debt creates a maintenance nightmare.

Asyncjavaspring
0 likes · 6 min read
Java Backend Nightmares: Async Misuse, Bad Practices, and Lock Bugs
Java Architect Essentials
Java Architect Essentials
Mar 14, 2023 · Backend Development

Using @Async in Spring: Built‑in Thread Pools, Their Limitations, and Custom Thread‑Pool Configuration

The article explains how Spring's @Async annotation works, compares synchronous and asynchronous calls, reviews the built‑in executors such as SimpleAsyncTaskExecutor, discusses their drawbacks, and provides detailed guidance on creating custom thread pools via AsyncConfigurer, AsyncConfigurerSupport, or a TaskExecutor bean, including code examples.

AsyncCustomExecutorThreadPool
0 likes · 9 min read
Using @Async in Spring: Built‑in Thread Pools, Their Limitations, and Custom Thread‑Pool Configuration
Top Architect
Top Architect
Mar 14, 2023 · Backend Development

Understanding Caching in Spring: Local vs Distributed Cache and GuavaCacheManager

This article explains the concept and purpose of caching, compares local and centralized cache approaches, introduces Spring's cache support and various CacheManager implementations, details GuavaCacheManager configuration and expiration strategies, demonstrates @Cacheable usage, and discusses common pitfalls such as cache miss due to internal method calls.

BackendCachejava
0 likes · 8 min read
Understanding Caching in Spring: Local vs Distributed Cache and GuavaCacheManager
Selected Java Interview Questions
Selected Java Interview Questions
Mar 13, 2023 · Backend Development

Understanding Java SPI and Spring SPI Mechanisms

This article explains the Java Service Provider Interface (SPI) concept, demonstrates how to implement and test SPI with ServiceLoader, compares its limitations, and shows how Spring extends SPI using spring.factories for more flexible and efficient service loading.

SPIServiceLoaderbackend-development
0 likes · 6 min read
Understanding Java SPI and Spring SPI Mechanisms
Su San Talks Tech
Su San Talks Tech
Mar 12, 2023 · Backend Development

Unlocking Spring’s Hidden Extension Points: From FactoryBean to @Import and Beyond

This article provides a comprehensive guide to Spring’s extension mechanisms, covering FactoryBean, @Import, bean lifecycle callbacks, BeanPostProcessor, BeanFactoryPostProcessor, the SPI system, Spring Boot startup hooks, event publishing, and custom XML namespaces, complete with runnable code examples and diagrams.

BeanPostProcessorEventFactoryBean
0 likes · 37 min read
Unlocking Spring’s Hidden Extension Points: From FactoryBean to @Import and Beyond
JD Cloud Developers
JD Cloud Developers
Mar 8, 2023 · Backend Development

Mastering Web Pagination: Database, Backend, and Frontend Techniques

This article explores web pagination across database, backend, and frontend layers, detailing MySQL LIMIT syntax, Java pagination implementations with PageHelper and Spring Data JDBC, and UI approaches using Thymeleaf and Element UI, providing code examples and comparative insights for developers.

Element UIThymeleafjava
0 likes · 9 min read
Mastering Web Pagination: Database, Backend, and Frontend Techniques
Top Architect
Top Architect
Feb 27, 2023 · Backend Development

Understanding Spring Transaction Management: @EnableTransactionManagement, Transaction Propagation, and Synchronization

This article explains how Spring enables transaction management through @EnableTransactionManagement, details the underlying proxy mechanism, outlines the basic and detailed execution flow, describes transaction propagation types and their classifications, and shows how to force rollback and use TransactionSynchronization for custom callbacks.

Synchronizationbackend-developmentjava
0 likes · 13 min read
Understanding Spring Transaction Management: @EnableTransactionManagement, Transaction Propagation, and Synchronization
Java Architect Essentials
Java Architect Essentials
Feb 23, 2023 · Backend Development

Using Spring and Apache Commons StopWatch for Precise Code Execution Timing in Java

This article explains why simple System.currentTimeMillis() timing is often insufficient, introduces Spring's org.springframework.util.StopWatch and Apache Commons' org.apache.commons.lang3.time.StopWatch, provides Maven dependencies and complete Java examples, and discusses important usage notes such as thread‑safety and task management.

Apache CommonsStopwatchspring
0 likes · 11 min read
Using Spring and Apache Commons StopWatch for Precise Code Execution Timing in Java
JD Tech
JD Tech
Feb 23, 2023 · Backend Development

Comprehensive Guide to Scheduling Tasks: Algorithms, Java Implementations, and Distributed Solutions

This article provides an in‑depth overview of scheduled task processing, covering common business scenarios, fundamental principles, single‑machine algorithms such as min‑heap and time‑wheel, Java utilities like Timer, DelayQueue, ScheduledExecutorService, Spring Task, Quartz, and distributed approaches using Redis, Elastic‑Job, and XXL‑Job.

Distributed SystemsTime Wheelcron
0 likes · 22 min read
Comprehensive Guide to Scheduling Tasks: Algorithms, Java Implementations, and Distributed Solutions
Java High-Performance Architecture
Java High-Performance Architecture
Feb 22, 2023 · Backend Development

8 Powerful Ways to Implement Asynchronous Programming in Java

This article explores eight Java asynchronous programming techniques—from raw threads and Future to CompletableFuture, Spring @Async, event-driven approaches, message queues, Hutool ThreadUtil, and Guava ListenableFuture—detailing their concepts, advantages, limitations, and providing complete code examples for each.

AsynchronousCompletableFutureFuture
0 likes · 14 min read
8 Powerful Ways to Implement Asynchronous Programming in Java
MaGe Linux Operations
MaGe Linux Operations
Feb 18, 2023 · Backend Development

8 Powerful Ways to Implement Asynchronous Programming in Java

This article explains why asynchronous execution improves latency in common scenarios like sending SMS or emails, and presents eight Java techniques—including threads, Future, CompletableFuture, Spring @Async, ApplicationEvent, message queues, third‑party utilities, and Guava—to implement robust asynchronous programming.

CompletableFutureFutureMessage Queue
0 likes · 14 min read
8 Powerful Ways to Implement Asynchronous Programming in Java
Code Ape Tech Column
Code Ape Tech Column
Feb 13, 2023 · Backend Development

Performance Comparison and Source Analysis of Java Bean Copy Utilities

This article analyzes the performance and implementation differences of various Java object‑copy utilities—including Apache BeanUtils, PropertyUtils, Spring BeanCopier, and Spring BeanUtils—by examining source code, benchmarking copy operations, and recommending alternatives to avoid the inefficiencies of Apache BeanUtils.

ApacheBeanUtilsObjectCopy
0 likes · 11 min read
Performance Comparison and Source Analysis of Java Bean Copy Utilities
Top Architect
Top Architect
Feb 11, 2023 · Backend Development

Comprehensive Guide to User Login Flow, Token Management, and Anonymous Access in Backend Systems

This article explains the complete user login process, including mobile verification, token generation, token expiration policies, request‑rate limiting with Redis, anonymous request handling, blacklist management, and provides full Java Spring code examples for implementing these backend authentication mechanisms.

API SecurityAuthenticationBackend
0 likes · 11 min read
Comprehensive Guide to User Login Flow, Token Management, and Anonymous Access in Backend Systems
The Dominant Programmer
The Dominant Programmer
Feb 9, 2023 · Backend Development

Simplify Java Bean Mapping with MapStruct: A Step‑by‑Step Guide

This article explains how to replace repetitive getter/setter code with MapStruct by showing dependency setup, defining source and target classes, creating mapper interfaces with @Mapping annotations, testing the conversion, and handling common integration issues such as Swagger conflicts.

bean-mappingmappermapstruct
0 likes · 6 min read
Simplify Java Bean Mapping with MapStruct: A Step‑by‑Step Guide
Code Ape Tech Column
Code Ape Tech Column
Feb 8, 2023 · Backend Development

Enhancing MVC Architecture with a Manager Layer in Java

The article explains the classic three‑layer MVC pattern, its shortcomings in complex Java projects, and proposes adding a Manager layer to separate generic business processing, reduce transaction scope, and improve code organization, illustrated with Spring‑based code examples.

MVCServicejava
0 likes · 9 min read
Enhancing MVC Architecture with a Manager Layer in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Feb 8, 2023 · Backend Development

Mastering Spring Application Events: From Core Listeners to Asynchronous Handling

This article explains how Spring 5.3.23 uses ApplicationEvent and ApplicationListener for event handling, details the standard lifecycle events, shows how to create and publish custom events, and demonstrates annotation‑based, asynchronous, and ordered listeners for robust backend development.

ApplicationEventBackendEventListener
0 likes · 9 min read
Mastering Spring Application Events: From Core Listeners to Asynchronous Handling
Java Captain
Java Captain
Feb 7, 2023 · Backend Development

A Sarcastic Critique of Overengineered Enterprise Java Architecture

The article humorously deconstructs an overly complex Java enterprise setup, illustrating how excessive use of interfaces, abstract classes, factories, dependency injection, XML configuration, and heavyweight IDE tooling leads to bloated, hard‑to‑maintain code that ultimately fails in production.

Design PatternsFactory Patterndependency-injection
0 likes · 5 min read
A Sarcastic Critique of Overengineered Enterprise Java Architecture
Architect's Journey
Architect's Journey
Feb 6, 2023 · Backend Development

Simplify Kafka Consumer Code with a Custom Method Argument Resolver

The article demonstrates how to use Spring's HandlerMethodArgumentResolver to automatically convert Kafka messages into typed method parameters, eliminating repetitive JSON parsing code and showing a complete implementation, usage example, and notes on version support and performance considerations.

HandlerMethodArgumentResolverKafkaMessage Conversion
0 likes · 6 min read
Simplify Kafka Consumer Code with a Custom Method Argument Resolver
Java Backend Technology
Java Backend Technology
Feb 6, 2023 · Backend Development

Master the 11 Most Powerful Spring Extension Points for Advanced Backend Development

This article explores Spring's eleven most commonly used extension points—including custom interceptors, bean factory access, global exception handling, type converters, configuration imports, startup runners, bean definition tweaks, bean post‑processing, initialization methods, shutdown hooks, and custom scopes—providing code examples and practical guidance for Java backend developers.

Extension PointsSpring MVCbackend-development
0 likes · 16 min read
Master the 11 Most Powerful Spring Extension Points for Advanced Backend Development
Code Ape Tech Column
Code Ape Tech Column
Jan 31, 2023 · Backend Development

Applying the Service Locator Pattern to Decouple File Parsers in Java

This article explains how to replace tightly‑coupled if‑else or switch‑case logic for selecting file parsers (JSON, CSV, XML) with a Service Locator Pattern using Spring's ServiceLocatorFactoryBean, demonstrating a clean, extensible solution that follows the Open/Closed principle.

BackendService Locatordependency-injection
0 likes · 8 min read
Applying the Service Locator Pattern to Decouple File Parsers in Java
Sanyou's Java Diary
Sanyou's Java Diary
Jan 30, 2023 · Backend Development

Mastering Spring Bean Injection: 5 Ways to Register Beans in the Container

This article comprehensively reviews the various techniques for injecting beans into the Spring container—including XML and properties configuration files, annotation-based declarations, manual BeanDefinition registration, direct singleton registration, and FactoryBean usage—providing code examples, underlying principles, and practical guidance for each method.

Bean InjectionSpring Frameworkbackend-development
0 likes · 18 min read
Mastering Spring Bean Injection: 5 Ways to Register Beans in the Container
IT Architects Alliance
IT Architects Alliance
Jan 27, 2023 · Backend Development

Mastering Session Management and SSO: From Cookies to CAS with Redis

This article analyzes the limitations of traditional HTTP session mechanisms in single‑server and clustered environments, explains why session sharing is essential for multi‑system products, and presents practical solutions such as session replication and centralized Redis storage, followed by a detailed walkthrough of CAS‑based single sign‑on implementation with Java Spring code examples and a comparison to OAuth2.

AuthenticationCASSSO
0 likes · 15 min read
Mastering Session Management and SSO: From Cookies to CAS with Redis
Code Ape Tech Column
Code Ape Tech Column
Jan 18, 2023 · Backend Development

Eight Ways to Implement Asynchronous Execution in Java

This article introduces eight practical techniques for achieving asynchronous processing in Java—including raw threads, Future, CompletableFuture, Spring @Async, ApplicationEvent, message queues, Hutool ThreadUtil, and Guava ListenableFuture—complete with code examples and discussion of their advantages and limitations.

AsynchronousFutureGuava
0 likes · 14 min read
Eight Ways to Implement Asynchronous Execution in Java
Java Architect Essentials
Java Architect Essentials
Jan 12, 2023 · Backend Development

How to Eliminate Repetitive Java Code with Design Patterns, Annotations, and Bean Mapping

This article examines why duplicate code harms maintainability, then demonstrates three practical techniques—using factory and template method patterns, leveraging custom annotations with reflection, and applying bean‑copy utilities—to refactor Java business logic and dramatically reduce redundancy.

Code RefactoringDesign PatternsReflection
0 likes · 29 min read
How to Eliminate Repetitive Java Code with Design Patterns, Annotations, and Bean Mapping
Sohu Tech Products
Sohu Tech Products
Jan 11, 2023 · Backend Development

Understanding ThreadPoolExecutor in Java: Usage, Implementation Details, and Practical Scenarios

This article provides an in‑depth overview of Java's ThreadPoolExecutor, covering why thread pools are needed, various creation methods via Executors, core parameters, internal workflow, source‑code analysis, monitoring, shutdown procedures, and real‑world applications such as Spring @Async and Dubbo integration.

DubboExecutorServiceThreadPoolExecutor
0 likes · 34 min read
Understanding ThreadPoolExecutor in Java: Usage, Implementation Details, and Practical Scenarios
Selected Java Interview Questions
Selected Java Interview Questions
Jan 10, 2023 · Backend Development

Hot Deployment of Java Interface Implementations Using Reflection and Spring

This article explains how to let users upload a JAR that implements a predefined Java interface, then dynamically load, register, and switch the implementation at runtime using both reflection‑based and Spring‑annotation‑based hot‑deployment techniques, complete with code examples and utility methods.

Dynamic LoadingHot DeploymentReflection
0 likes · 8 min read
Hot Deployment of Java Interface Implementations Using Reflection and Spring
DaTaobao Tech
DaTaobao Tech
Dec 30, 2022 · Backend Development

Practical Guide to Upgrading Java 8 to JDK 11 with G1 GC: Benefits, Steps, and New Features

The article provides a hands‑on migration guide for moving an internal gateway service from Java 8 to JDK 11 with the G1 garbage collector, detailing a checklist of tool and dependency updates, showcasing up to 105 % performance gains, outlining new language features, virtual‑thread usage, and best‑practice recommendations for a smooth, cost‑effective upgrade.

JDK11VirtualThreadsg1gc
0 likes · 32 min read
Practical Guide to Upgrading Java 8 to JDK 11 with G1 GC: Benefits, Steps, and New Features
Code Ape Tech Column
Code Ape Tech Column
Dec 26, 2022 · Backend Development

Applying the Chain of Responsibility Pattern for Multi‑Level Product Validation and Workflow in Java

This article explains the Chain of Responsibility design pattern, demonstrates its use in multi‑step product creation validation and expense‑approval workflows with concrete Java/Spring code, and discusses configuration, dynamic composition, advantages, drawbacks, and testing scenarios.

BackendChain of Responsibilitydesign pattern
0 likes · 21 min read
Applying the Chain of Responsibility Pattern for Multi‑Level Product Validation and Workflow in Java
macrozheng
macrozheng
Dec 17, 2022 · Fundamentals

Master 9 Essential Design Patterns for Cleaner Java Code

This article explains nine widely used design patterns—Singleton, Builder, Factory, Strategy, Template Method, Chain of Responsibility, Proxy, Adapter, and Observer—detailing their concepts, typical use‑cases, and concrete Java code examples drawn from popular open‑source projects such as Spring, Dubbo, MyBatis and Guava.

BuilderFactoryObserver
0 likes · 27 min read
Master 9 Essential Design Patterns for Cleaner Java Code
Architecture Digest
Architecture Digest
Dec 16, 2022 · Backend Development

PowerJob: A Next‑Generation Distributed Task Scheduling and Computing Framework – Introduction and Quick‑Start Guide

PowerJob is a third‑generation distributed job scheduler that adds workflow orchestration, map‑reduce style computation and rich execution modes to traditional CRON‑based scheduling, and this guide explains its advantages, core features, architecture, and provides step‑by‑step instructions with code samples to get started quickly.

Distributed SchedulingMapReducejava
0 likes · 11 min read
PowerJob: A Next‑Generation Distributed Task Scheduling and Computing Framework – Introduction and Quick‑Start Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 16, 2022 · Backend Development

Key Spring Filters: FormContent, ForwardedHeader, Shallow ETag, CORS & Encoding

This guide explains Spring 5.3’s built‑in servlet filters—including FormContentFilter for handling form data in PUT/PATCH/DELETE, ForwardedHeaderFilter for adjusting request URLs behind proxies, ShallowEtagHeaderFilter for lightweight caching, the CORS filter for cross‑origin requests, and CharacterEncodingFilter for enforcing request/response encoding—along with configuration tips and security considerations.

BackendServlet FiltersWeb Development
0 likes · 7 min read
Key Spring Filters: FormContent, ForwardedHeader, Shallow ETag, CORS & Encoding
IT Architects Alliance
IT Architects Alliance
Dec 13, 2022 · Backend Development

Understanding Spring Transaction Management: @EnableTransactionManagement, Execution Principles, Propagation Mechanisms, and Forced Rollback

This article explains how Spring's @EnableTransactionManagement activates transaction support by registering advisors and proxy beans, details the core execution flow of transactional methods, explores various propagation scenarios with code examples, and demonstrates forced rollback and transaction synchronization techniques.

aopjavapropagation
0 likes · 10 min read
Understanding Spring Transaction Management: @EnableTransactionManagement, Execution Principles, Propagation Mechanisms, and Forced Rollback
Su San Talks Tech
Su San Talks Tech
Dec 9, 2022 · Backend Development

Master Asynchronous Java: Threads, Futures, CompletableFuture & Spring @Async

This article introduces asynchronous programming concepts in Java, explaining the shift from synchronous to asynchronous execution, and demonstrates practical implementations using raw threads, ThreadPoolExecutor, Future, FutureTask, CompletableFuture, and Spring's @Async annotation, along with event handling and message queue integration for high‑throughput systems.

AsynchronousCompletableFutureThreadPool
0 likes · 16 min read
Master Asynchronous Java: Threads, Futures, CompletableFuture & Spring @Async
转转QA
转转QA
Dec 8, 2022 · Backend Development

Applying AOP to Reduce Coupling in a Data Construction Platform

This article explains how Aspect‑Oriented Programming (AOP) was introduced into a data construction platform to address high development effort, strong business coupling, and maintenance difficulty by isolating cross‑cutting concerns such as logging, thereby improving modularity, development speed, and code maintainability.

Aspect Oriented ProgrammingData PlatformSoftware Architecture
0 likes · 5 min read
Applying AOP to Reduce Coupling in a Data Construction Platform