Tagged articles
1744 articles
Page 11 of 18
21CTO
21CTO
Jul 19, 2022 · Fundamentals

Why Java Remains Dominant: Community, Ecosystem, and Future Trends

The article explores how Java has survived massive industry shifts through a vibrant community, extensive open‑source frameworks, continual language evolution, and emerging opportunities like WebAssembly, illustrating why it stays a cornerstone of enterprise and creative software development.

JVMProgramming Languagecommunity
0 likes · 8 min read
Why Java Remains Dominant: Community, Ecosystem, and Future Trends
Java Backend Technology
Java Backend Technology
Jul 15, 2022 · Backend Development

Master Java Performance Timing with Spring and Apache StopWatch

This article explains how to use Spring's org.springframework.util.StopWatch and Apache Commons Lang3 StopWatch to accurately measure and analyze Java code execution time, covering setup, basic usage, advanced features, thread‑safety considerations, and practical code examples for both libraries.

Apache CommonsCode ProfilingPerformance Monitoring
0 likes · 8 min read
Master Java Performance Timing with Spring and Apache StopWatch
Code Ape Tech Column
Code Ape Tech Column
Jul 13, 2022 · Backend Development

Using Spring Event for Synchronous and Asynchronous Processing in Spring Cloud Alibaba Projects

This article demonstrates how to create custom Spring events, define listeners, publish events, and enable asynchronous handling with @EnableAsync and @Async annotations, providing complete code examples and test results for both synchronous and asynchronous scenarios in a Spring Cloud Alibaba micro‑service environment.

AsynchronousBackendEvent
0 likes · 9 min read
Using Spring Event for Synchronous and Asynchronous Processing in Spring Cloud Alibaba Projects
Bin's Tech Cabin
Bin's Tech Cabin
Jul 8, 2022 · Backend Development

Graceful Shutdown in Java: From Kernel Signals to Netty, Spring & Dubbo

This article explores the complete lifecycle of graceful shutdown for Java server applications, detailing how operating‑system signals, JVM shutdown hooks, and framework‑level mechanisms in Spring, Dubbo, and Netty collaborate to safely stop services while preserving in‑flight requests and resources.

DubboGraceful ShutdownJVM
0 likes · 75 min read
Graceful Shutdown in Java: From Kernel Signals to Netty, Spring & Dubbo
Zhuanzhuan Tech
Zhuanzhuan Tech
Jul 6, 2022 · Backend Development

Spring Expression Language (SpEL) Overview and Practical Usage

This article introduces Spring Expression Language (SpEL), explains its common syntax, demonstrates quick-start examples, shows real-world usage with AOP monitoring, and outlines its internal implementation, providing a concise guide for backend developers working with Spring.

Expression LanguageSpELaop
0 likes · 9 min read
Spring Expression Language (SpEL) Overview and Practical Usage
Java Architect Essentials
Java Architect Essentials
Jul 4, 2022 · Backend Development

Comprehensive Guide to Activiti 7 Workflow Engine: Concepts, Configuration, Deployment, and Usage

This article provides a detailed tutorial on Activiti 7 workflow engine, covering workflow fundamentals, BPMN modeling, environment setup, Maven dependencies, configuration files, process deployment, instance creation, task querying and completion, process definition management, resource extraction, and historical data inspection, all illustrated with Java code examples.

ActivitiBPMNProcessEngine
0 likes · 38 min read
Comprehensive Guide to Activiti 7 Workflow Engine: Concepts, Configuration, Deployment, and Usage
Java Architect Essentials
Java Architect Essentials
Jun 29, 2022 · Backend Development

Using MapStruct for Efficient Java Object Mapping and DTO Conversion

This article explains how MapStruct simplifies Java object‑to‑DTO mapping by defining mapping rules, demonstrates various features such as default methods, abstract mappers, multiple parameters, @MappingTarget updates, handling of fields without getters/setters, Spring integration, and custom type conversions with clear code examples.

Object Mappingcode-generationdto
0 likes · 17 min read
Using MapStruct for Efficient Java Object Mapping and DTO Conversion
Code Ape Tech Column
Code Ape Tech Column
Jun 28, 2022 · Backend Development

Implementing Distributed WebSocket Messaging with Spring Cloud Alibaba, Redis, and Kafka

This article explains how to solve cross‑server WebSocket communication in a distributed Java application by using a message queue (Redis or Kafka) to broadcast messages, storing user‑node mappings, and providing complete Spring configuration, code examples, and a demo page for end‑to‑end testing.

BackendDistributed MessagingKafka
0 likes · 18 min read
Implementing Distributed WebSocket Messaging with Spring Cloud Alibaba, Redis, and Kafka
Selected Java Interview Questions
Selected Java Interview Questions
Jun 27, 2022 · Backend Development

Implementation Principles and Sample Code of RPC (Remote Procedure Call) in Java

This article explains the fundamentals of RPC, describes the components involved in a basic remote call, and provides a complete Java implementation using Spring, custom XML configuration, Netty for network communication, and Zookeeper for service registration and discovery, complete with server and client code examples.

NettyRPCZooKeeper
0 likes · 18 min read
Implementation Principles and Sample Code of RPC (Remote Procedure Call) in Java
Selected Java Interview Questions
Selected Java Interview Questions
Jun 23, 2022 · Backend Development

Using Spring and Apache Commons StopWatch to Monitor Java Code Execution Time

This article explains how to leverage Spring's org.springframework.util.StopWatch and Apache Commons Lang3 StopWatch for precise Java performance measurement, covering setup, usage examples, source code insights, important considerations, and practical code snippets for both libraries.

Apache CommonsCode ProfilingPerformance Monitoring
0 likes · 9 min read
Using Spring and Apache Commons StopWatch to Monitor Java Code Execution Time
Code Ape Tech Column
Code Ape Tech Column
Jun 21, 2022 · Information Security

Implementing Data Desensitization with Custom Jackson Annotations in Java

This article explains how to mask sensitive fields such as ID numbers, phone numbers, and addresses in Java APIs by creating a custom @Sensitive annotation, defining masking strategies, implementing a Jackson serializer, and testing the solution with a Spring REST controller, providing complete code examples and sample output.

BackendJacksonannotation
0 likes · 6 min read
Implementing Data Desensitization with Custom Jackson Annotations in Java
Code Ape Tech Column
Code Ape Tech Column
Jun 17, 2022 · Databases

Understanding Local Transactions in Sharding-JDBC and Their Limits for Distributed Transactions

This article explains why the @Transactional annotation in Sharding-JDBC can roll back across multiple databases in some scenarios, clarifies the cases it truly supports, details the internal rollback implementation, and outlines the situations where local transactions cannot guarantee distributed consistency.

Local TransactionSharding-JDBCdistributed-transaction
0 likes · 8 min read
Understanding Local Transactions in Sharding-JDBC and Their Limits for Distributed Transactions
Cognitive Technology Team
Cognitive Technology Team
Jun 10, 2022 · Backend Development

Understanding Spring's @Scheduled Annotation and Its Task Scheduling Mechanism

This article explains how Spring's @Scheduled annotation works, covering configuration options like cron, fixedDelay and fixedRate, the internal processing by ScheduledAnnotationBeanPostProcessor, method reflection, task registration with ScheduledTaskRegistrar, and the underlying execution using ThreadPoolTaskScheduler and ScheduledThreadPoolExecutor.

SchedulingTaskSchedulerannotation
0 likes · 6 min read
Understanding Spring's @Scheduled Annotation and Its Task Scheduling Mechanism
IT Architects Alliance
IT Architects Alliance
Jun 3, 2022 · Information Security

Step-by-Step Guide to Setting Up CAS Single Sign-On (SSO) with Server and Client Configuration

This article provides a comprehensive tutorial on implementing Single Sign-On using the CAS (Central Authentication Service) framework, covering the concepts of SSO and CAS, required development environment, server-side deployment, client configuration, and end‑to‑end testing with detailed code examples.

AuthenticationCASSSO
0 likes · 8 min read
Step-by-Step Guide to Setting Up CAS Single Sign-On (SSO) with Server and Client Configuration
Architecture Digest
Architecture Digest
May 30, 2022 · Backend Development

Comprehensive Guide to Activiti 7 Workflow Engine: Concepts, Setup, Deployment, and Usage

This article provides an in‑depth tutorial on Activiti 7 workflow management, covering workflow concepts, system architecture, BPMN modeling, environment setup, Maven dependencies, database configuration, deployment methods, process execution, task handling, and historical data retrieval for Java backend development.

ActivitiBPMNdatabase
0 likes · 43 min read
Comprehensive Guide to Activiti 7 Workflow Engine: Concepts, Setup, Deployment, and Usage
Programmer DD
Programmer DD
May 28, 2022 · Backend Development

Master Unified Exception Handling in Spring with @ControllerAdvice and Assert

This article explains how to replace repetitive try‑catch blocks in Java Spring applications with a clean, centralized exception handling strategy using @ControllerAdvice, custom Assert utilities, and enum‑based error codes, while also showing how to return consistent error responses across services.

AssertControllerAdviceexceptionhandling
0 likes · 25 min read
Master Unified Exception Handling in Spring with @ControllerAdvice and Assert
Sanyou's Java Diary
Sanyou's Java Diary
May 22, 2022 · Backend Development

How Spring’s Three‑Level Cache Solves Circular Dependencies

This article explains what circular dependencies are in Spring, describes the three‑level cache mechanism (singletonObjects, earlySingletonObjects, singletonFactories), shows how it resolves singleton bean cycles, and outlines scenarios where the cache cannot break the dependency, such as constructor injection and prototype beans.

Three-level Cachebean-lifecyclecircular-dependency
0 likes · 14 min read
How Spring’s Three‑Level Cache Solves Circular Dependencies
Top Architect
Top Architect
May 21, 2022 · Backend Development

Comprehensive Guide to Spring Validation: Best Practices, Advanced Features, and Implementation Details

This article provides an in‑depth tutorial on Spring Validation, covering basic usage, dependency configuration, requestBody and requestParam validation, unified exception handling, advanced techniques such as group, nested, and collection validation, custom validators, programmatic validation, fail‑fast mode, and the underlying implementation mechanisms.

BackendHibernate Validatordto
0 likes · 16 min read
Comprehensive Guide to Spring Validation: Best Practices, Advanced Features, and Implementation Details
Cognitive Technology Team
Cognitive Technology Team
May 20, 2022 · Backend Development

Controlling Bean Initialization Order in Spring: Using @Autowired, @Resource, @Inject and @DependsOn

This article explains how Spring developers can explicitly control bean instantiation order by using dependency‑injection annotations such as @Autowired, @Resource, @Inject, and the @DependsOn annotation, detailing the underlying processors and showing code examples for each mechanism.

Bean Initializationdependency-injectionjava
0 likes · 4 min read
Controlling Bean Initialization Order in Spring: Using @Autowired, @Resource, @Inject and @DependsOn
Cognitive Technology Team
Cognitive Technology Team
May 20, 2022 · Backend Development

Implementing Business Data Pre‑warming in Spring Using SmartLifecycle and ContextRefreshedEvent

To pre‑warm business data before a Spring web service accepts requests, the article explains two approaches—implementing the SmartLifecycle interface with proper phase ordering and using a ContextRefreshedEvent listener—while highlighting code examples, execution timing, and cautions against asynchronous overrides.

BackendContextRefreshedEventSmartLifecycle
0 likes · 7 min read
Implementing Business Data Pre‑warming in Spring Using SmartLifecycle and ContextRefreshedEvent
Sanyou's Java Diary
Sanyou's Java Diary
May 19, 2022 · Backend Development

Mastering Spring: Core Concepts, Modules, Annotations & Advanced Features

This comprehensive guide walks through Spring’s fundamentals—including IoC, DI, core modules, common annotations, AOP concepts, transaction management, MVC workflow, and Spring Boot auto‑configuration—while also covering advanced topics such as bean lifecycle, circular dependencies, proxy mechanisms, and an introduction to Spring Cloud.

IoCMVCSpring Boot
0 likes · 54 min read
Mastering Spring: Core Concepts, Modules, Annotations & Advanced Features
macrozheng
macrozheng
May 18, 2022 · Backend Development

Master Spring’s Assert and Utility Classes: Essential Tips & Code Samples

This guide explains Spring’s Assert utilities and a comprehensive set of core helper classes—including ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, AopUtils, and AopContext—detailing their purpose, typical use cases, and providing concise code examples for each method.

Utility Classesaopassertions
0 likes · 14 min read
Master Spring’s Assert and Utility Classes: Essential Tips & Code Samples
21CTO
21CTO
May 13, 2022 · Backend Development

How Sonic Achieves Near‑Instant Hot Deployment for Java Services

This article details Meituan's internal Sonic IDEA plugin, explaining hot‑deployment concepts, why they matter, the technical challenges, and Sonic's architecture—including agents, instrumentation, class reloading, Spring Bean/XML/MyBatis reloads, and real‑world deployment experience—showing how code changes can become effective in seconds instead of minutes.

Hot DeploymentIDEA PluginInstrumentation
0 likes · 21 min read
How Sonic Achieves Near‑Instant Hot Deployment for Java Services
Code Ape Tech Column
Code Ape Tech Column
May 7, 2022 · Information Security

SQL Injection Attack Demonstration and Prevention in a Java Spring Application

This article explains how SQL injection can exploit a Java Spring course‑selection system by concatenating user input into SQL statements, demonstrates various injection techniques such as always‑true conditions and UNION queries, and provides multiple defensive measures including prepared statements, type checking, permission restrictions, and request‑parameter filtering.

SQL injectiondatabasejava
0 likes · 5 min read
SQL Injection Attack Demonstration and Prevention in a Java Spring Application
macrozheng
macrozheng
May 6, 2022 · Backend Development

Master Spring Bean Injection: XML, Annotations, FactoryBean & RegistryPostProcessor

Explore multiple Spring bean injection techniques—including XML configuration, annotation-driven @Configuration/@Bean, @Import, FactoryBean, and BeanDefinitionRegistryPostProcessor—through clear explanations, code samples, and practical examples, highlighting their advantages, drawbacks, and how to integrate them into a Spring application.

BeanDefinitionRegistryPostProcessorFactoryBeandependency-injection
0 likes · 10 min read
Master Spring Bean Injection: XML, Annotations, FactoryBean & RegistryPostProcessor
Code Ape Tech Column
Code Ape Tech Column
May 5, 2022 · Backend Development

Optimizing Bulk Database Updates with Manual Transactions and Multithreading in Spring/MyBatis

This article demonstrates how to dramatically speed up updating tens of thousands of records in a Spring‑MyBatis application by switching from automatic per‑operation commits to manual transaction control, applying multithreaded processing, tuning the Hikari connection pool, and using SQL UNION‑based batch updates.

MyBatisdatabasemultithreading
0 likes · 13 min read
Optimizing Bulk Database Updates with Manual Transactions and Multithreading in Spring/MyBatis
Programmer DD
Programmer DD
May 3, 2022 · Backend Development

Mastering Spring Kafka Listeners: Containers, Concurrency, and @KafkaListener

This article explains how Spring Kafka’s KafkaMessageListenerContainer and ConcurrentMessageListenerContainer work, details their start-up process and internal consumer threads, shows how @KafkaListener bridges business logic, and provides configuration examples for single‑message and batch processing in Spring Boot.

KafkaMessage Listenerbackend-development
0 likes · 11 min read
Mastering Spring Kafka Listeners: Containers, Concurrency, and @KafkaListener
Su San Talks Tech
Su San Talks Tech
May 2, 2022 · Fundamentals

12 Real-World Java Concurrency Scenarios Every Developer Should Master

This article explores twelve practical multithreading use cases in Java, ranging from simple scheduled tasks and listeners to Excel imports, remote call aggregation, user context handling, MDC logging, high‑concurrency simulation, Kafka message processing, atomic counters, and delayed jobs, providing code examples and best‑practice tips for each scenario.

ParallelStreamThreadPoolconcurrency
0 likes · 25 min read
12 Real-World Java Concurrency Scenarios Every Developer Should Master
Java Captain
Java Captain
Apr 29, 2022 · Backend Development

Best Practices for Java Bean Conversion, Validation, and Refactoring

This article discusses practical techniques for Java developers, covering bean conversion using DTOs and Spring utilities, validation with JSR‑303, leveraging Lombok for cleaner code, applying design patterns, and systematic refactoring to improve readability, maintainability, and overall code quality in backend projects.

Lombokdtojava
0 likes · 27 min read
Best Practices for Java Bean Conversion, Validation, and Refactoring
Selected Java Interview Questions
Selected Java Interview Questions
Apr 29, 2022 · Backend Development

Using Spring's @Async Annotation: Thread Pool Configuration and Custom Implementations

This article explains the purpose and usage rules of Spring's @Async annotation, compares built‑in executors, demonstrates how to enable @Async, and provides detailed examples of custom thread‑pool configurations, multiple pool management, and important source‑code analysis for robust asynchronous processing in Java backend applications.

AsyncThreadPoolspring
0 likes · 13 min read
Using Spring's @Async Annotation: Thread Pool Configuration and Custom Implementations
Programmer DD
Programmer DD
Apr 29, 2022 · Backend Development

Simplify Bean Mapping with MapStruct Spring Extensions and ConversionService

This article introduces MapStruct’s new Spring extension, shows how to replace manual BeanUtil conversions with generated mappers, explains the Spring Converter interface, and demonstrates custom configuration and integration with ConversionService for seamless DTO/VO/PO transformations in Java backend projects.

ConversionServicebean-mappingjava
0 likes · 8 min read
Simplify Bean Mapping with MapStruct Spring Extensions and ConversionService
macrozheng
macrozheng
Apr 29, 2022 · Backend Development

Boost Spring Apps with MapStruct: Seamless Conversion Service Integration

This article explains how to replace manual BeanUtil mapping with MapStruct, leverage Spring's Converter interface, and use the MapStruct Spring Extensions plugin to automatically register mappers with ConversionService, including custom adapter configuration and integration of built‑in Spring converters.

ConversionServicebackend-developmentcode-generation
0 likes · 8 min read
Boost Spring Apps with MapStruct: Seamless Conversion Service Integration
Architecture Digest
Architecture Digest
Apr 28, 2022 · Backend Development

Comprehensive Domain Interface Design and Its Application in Backend Systems

This article explores the concept of fully interface‑based domain modeling, demonstrates how to design domain objects as interfaces, shows repository implementations for JPA, MyBatis and Elasticsearch, discusses association handling, and explains how such designs enable seamless switching between monolithic, clustered and microservice deployments.

Domain-Driven DesignInterface DesignRepository Pattern
0 likes · 11 min read
Comprehensive Domain Interface Design and Its Application in Backend Systems
Selected Java Interview Questions
Selected Java Interview Questions
Apr 27, 2022 · Backend Development

Using MapStruct for Object Mapping in Java: Basics, Advanced Features and Spring Integration

This article explains how MapStruct, a Java annotation‑processor library, can automatically generate mapper implementations to convert between entities and DTOs, covering basic usage, default methods, abstract classes, multiple source parameters, update operations, handling fields without getters/setters, Spring injection and custom type conversions.

Annotation ProcessorObject Mappingdto
0 likes · 16 min read
Using MapStruct for Object Mapping in Java: Basics, Advanced Features and Spring Integration
Architecture Digest
Architecture Digest
Apr 26, 2022 · Backend Development

Implementing Request Logging with Spring AOP and Annotations

This article demonstrates how to create a request‑logging aspect in Spring Boot using AOP annotations, shows code for pointcuts, advices, high‑concurrency optimizations, exception handling, and trace‑ID propagation, and explains the underlying concepts and practical tips.

aopaspectjjava
0 likes · 16 min read
Implementing Request Logging with Spring AOP and Annotations
Selected Java Interview Questions
Selected Java Interview Questions
Apr 24, 2022 · Backend Development

Comprehensive Guide to Spring Validation: Best Practices, Advanced Usage, and Implementation Details

This article provides an in‑depth tutorial on Spring Validation, covering basic usage, dependency setup, requestBody and requestParam validation, DTO constraints, group and nested validation, collection handling, custom validators, programming‑style validation, fail‑fast mode, and the underlying implementation mechanisms in Spring MVC.

HibernateValidatorSpringBootdto
0 likes · 16 min read
Comprehensive Guide to Spring Validation: Best Practices, Advanced Usage, and Implementation Details
Java Backend Technology
Java Backend Technology
Apr 24, 2022 · Backend Development

Master Java Refactoring: DTO Conversions, Lombok, and Design Patterns

This article explores practical Java backend techniques, including IDE selection, domain vs entity naming, DTO conversion strategies with BeanUtils and custom interfaces, validation with JSR‑303, Lombok shortcuts, builder patterns, static constructors, and design‑pattern considerations, offering concrete code examples and refactoring tips for seasoned developers.

Design PatternsLombokdto
0 likes · 27 min read
Master Java Refactoring: DTO Conversions, Lombok, and Design Patterns
Open Source Tech Hub
Open Source Tech Hub
Apr 23, 2022 · Backend Development

Should You Avoid Field Injection in Spring? Constructor vs Setter Trade‑offs

Field injection in Spring looks concise, but it introduces hidden dependencies, violates the Single Responsibility Principle, hampers immutability, and tightly couples code to the DI container; the article compares constructor, setter, and field injection, explains their drawbacks, and recommends using constructors for mandatory dependencies and setters for optional ones.

Constructor InjectionField InjectionSetter Injection
0 likes · 9 min read
Should You Avoid Field Injection in Spring? Constructor vs Setter Trade‑offs
Java Tech Enthusiast
Java Tech Enthusiast
Apr 23, 2022 · Backend Development

Spring AOP Tutorial with Code Examples

This Spring AOP tutorial explains how to modularize cross‑cutting concerns such as timing by defining an aspect with @Before, @After, @AfterReturning, @AfterThrowing and @Around advice, demonstrates refactoring a calculation service, and compares Spring’s proxy mechanisms to a custom JDK dynamic proxy implementation.

DynamicProxyaopaspectj
0 likes · 17 min read
Spring AOP Tutorial with Code Examples
Top Architect
Top Architect
Apr 21, 2022 · Backend Development

Understanding AOP: Joinpoint Design, Advice, and Weaving in Java

This article explains the background, concepts, and implementation details of Aspect‑Oriented Programming in Java, covering joinpoint interface design, advice abstraction, static and dynamic weaving, and how Spring AOP applies these principles with illustrative code and diagrams.

AdviceAspect Oriented ProgrammingJoinpoint
0 likes · 9 min read
Understanding AOP: Joinpoint Design, Advice, and Weaving in Java
Programmer DD
Programmer DD
Apr 16, 2022 · Backend Development

Mastering Single-Node and Distributed Scheduled Tasks in Java

This article compares native JDK ScheduledExecutorService, Spring Task, Redis‑based approaches, and popular distributed scheduling frameworks such as Quartz, Elastic‑Job, LTS, and XXL‑Job, providing code examples, usage scenarios, advantages, and best‑practice recommendations for implementing reliable timed jobs in microservice environments.

Distributed SchedulingScheduled Tasksbackend-development
0 likes · 10 min read
Mastering Single-Node and Distributed Scheduled Tasks in Java
Java Backend Technology
Java Backend Technology
Apr 16, 2022 · Backend Development

Why @Transactional Sometimes Fails in Spring and How to Fix It

This article explains three common situations where Spring's @Transactional annotation becomes ineffective—non‑public methods, internal self‑calls, and swallowed exceptions—detailing the underlying proxy mechanism, code examples, test results, and practical workarounds to ensure proper transaction management.

Exception Handlingaopdatabase
0 likes · 12 min read
Why @Transactional Sometimes Fails in Spring and How to Fix It
Java Architect Essentials
Java Architect Essentials
Apr 15, 2022 · Backend Development

Comprehensive Guide to Common Spring Framework Annotations

This article provides a detailed overview of the most frequently used Spring annotations—including core, MVC/REST, Boot, stereotype, data access, scheduling, and testing annotations—explaining their purposes, usage rules, and providing Java code examples for each.

DependencyInjectionSpringBootSpringMVC
0 likes · 13 min read
Comprehensive Guide to Common Spring Framework Annotations
Top Architect
Top Architect
Apr 15, 2022 · Backend Development

Implementing Request Logging with Spring AOP and TraceId

This article demonstrates how to create a Spring AOP request‑logging aspect that captures IP, URL, HTTP method, class method, parameters, results and execution time, and extends it with high‑concurrency handling, error logging, and TraceId propagation for better traceability.

Request Loggingaopjava
0 likes · 13 min read
Implementing Request Logging with Spring AOP and TraceId
IT Services Circle
IT Services Circle
Apr 8, 2022 · Backend Development

Understanding Spring's Event Publishing and Listening Mechanism: Source Code Analysis and Practical Implementation

This article explains how Spring implements broadcast and listener functionality through ApplicationEventPublisher and ApplicationListener, analyzes the underlying bean post‑processor workflow, and provides complete source‑code examples for custom events, publishers, listeners, and a REST client to demonstrate end‑to‑end event handling.

ApplicationListenerEvent Publishingbackend-development
0 likes · 7 min read
Understanding Spring's Event Publishing and Listening Mechanism: Source Code Analysis and Practical Implementation
Selected Java Interview Questions
Selected Java Interview Questions
Apr 7, 2022 · Backend Development

Single-Node and Distributed Scheduled Tasks in Java: JDK, Spring, Redis, and Middleware Solutions

This article explains how to implement single-node scheduled tasks using JDK's ScheduledExecutorService and Spring @Scheduled, compares Redis‑based approaches with ZSet and key‑space notifications, and reviews popular distributed scheduling frameworks such as Quartz, elastic‑job‑lite, LTS, and XXL‑Job for microservice environments.

Scheduled Tasksbackend-developmentspring
0 likes · 9 min read
Single-Node and Distributed Scheduled Tasks in Java: JDK, Spring, Redis, and Middleware Solutions
Java Backend Technology
Java Backend Technology
Apr 7, 2022 · Backend Development

Does @Transactional Commit Before Unlock? Deep Dive into Spring Transaction Timing

This article explores the precise moment a Spring @Transactional transaction is committed relative to a surrounding lock release, revealing that commits occur after the method finishes, and demonstrates how to verify this through source code inspection, debugging techniques, and proper lock‑usage to prevent overselling.

Lockdebuggingmysql
0 likes · 21 min read
Does @Transactional Commit Before Unlock? Deep Dive into Spring Transaction Timing
Selected Java Interview Questions
Selected Java Interview Questions
Apr 6, 2022 · Backend Development

Server‑Side Request Deduplication Using Redis and Java

This article explains how to prevent duplicate user requests on the server side by leveraging unique request IDs or business‑parameter MD5 hashes with Redis, provides Java helper utilities, code examples, and practical tips for handling time‑related fields and atomic SETNX operations.

MD5request deduplicationspring
0 likes · 9 min read
Server‑Side Request Deduplication Using Redis and Java
Zhuanzhuan Tech
Zhuanzhuan Tech
Apr 6, 2022 · Backend Development

Design and Implementation of an Annotation‑Based HTTP Client in Spring

This article presents a design pattern for a unified, annotation‑driven HTTP client in a Spring‑based payment system, detailing custom annotations, dynamic proxy enhancement, and bean registration via FactoryBean and ImportBeanDefinitionRegistrar, with complete code examples and a summary of key concepts.

Dynamic ProxyFactoryBeanHTTP client
0 likes · 16 min read
Design and Implementation of an Annotation‑Based HTTP Client in Spring
Java Backend Technology
Java Backend Technology
Apr 3, 2022 · Backend Development

Why @Transactional Fails in Spring and How to Fix It

This article explains three common reasons why the @Transactional annotation may not work in Spring—non‑public methods, self‑invocation, and catching exceptions—provides code examples for each case, and details the underlying proxy and transaction management mechanisms to help developers resolve the issues.

Spring Bootaopdatabase transaction
0 likes · 11 min read
Why @Transactional Fails in Spring and How to Fix It
Java Backend Technology
Java Backend Technology
Apr 2, 2022 · Information Security

How I Reproduced the Massive Spring RCE Vulnerability (CVE-2022-22965)

This article details the discovery, official announcement, prerequisite conditions, and step‑by‑step reproduction of the critical Spring Framework remote code execution vulnerability (CVE‑2022‑22965), including exploit payloads, JSP backdoor creation, and practical mitigation insights.

Backend SecurityCVE-2022-22965Exploit
0 likes · 10 min read
How I Reproduced the Massive Spring RCE Vulnerability (CVE-2022-22965)
IT Xianyu
IT Xianyu
Apr 1, 2022 · Backend Development

Why Use Spring? Understanding How It Solves Coupling Problems with Dependency Injection

This article compares traditional object creation with Spring’s dependency injection, demonstrating how injecting DAO beans via XML configuration decouples service and data layers, includes Java code examples, test results, and visual analogies of gear systems to illustrate reduced coupling.

Inversion of ControlIoCbackend-development
0 likes · 5 min read
Why Use Spring? Understanding How It Solves Coupling Problems with Dependency Injection
Programmer DD
Programmer DD
Mar 31, 2022 · Information Security

Is the Rumored Spring “Super” Vulnerability Real? What You Need to Know

The article investigates the circulating rumors of a massive Spring framework vulnerability, clarifies its actual scope—affecting Java 9+ projects—and explains why the alleged CVE differs from official reports, while warning readers to rely only on verified security advisories.

CVE-2022-22963Vulnerabilityjava
0 likes · 7 min read
Is the Rumored Spring “Super” Vulnerability Real? What You Need to Know
JavaEdge
JavaEdge
Mar 29, 2022 · Information Security

How to Detect and Fix the Spring SPEL Remote Code Execution Vulnerability

This guide explains the Spring SPEL injection flaw, how to determine if your Java application is affected by checking JDK version and Spring usage in WAR or JAR packages, and provides official upgrade steps along with temporary WAF and code‑level mitigations.

DetectionRCESpEL
0 likes · 5 min read
How to Detect and Fix the Spring SPEL Remote Code Execution Vulnerability
IT Services Circle
IT Services Circle
Mar 27, 2022 · Backend Development

Resolving OpenFeign Asynchronous Call Failures by Propagating Request Context

This article explains why OpenFeign asynchronous calls fail due to lost request context, demonstrates a RequestInterceptor to propagate JWT tokens, and shows how to capture and set RequestAttributes in CompletableFuture tasks so that async Feign calls succeed without triggering Sentinel degradation.

OpenFeignRequestContextHolderRequestInterceptor
0 likes · 5 min read
Resolving OpenFeign Asynchronous Call Failures by Propagating Request Context
Selected Java Interview Questions
Selected Java Interview Questions
Mar 26, 2022 · Backend Development

Comparison of @Resource and @Autowired for Bean Injection in Spring

This article explains the similarities and differences between Spring's @Autowired and the JSR‑250 @Resource annotations, covering their packages, injection mechanisms, usage on fields and setters, configuration options, IDE warnings, and best‑practice recommendations for bean injection in Java backend development.

annotationsdependency-injectionspring
0 likes · 6 min read
Comparison of @Resource and @Autowired for Bean Injection in Spring
Yang Money Pot Technology Team
Yang Money Pot Technology Team
Mar 25, 2022 · Backend Development

Why WebSocket? Advantages, Comparison, and STOMP on Spring WebSocket

This article explains the limitations of HTTP for real‑time communication, compares WebSocket with polling, long‑polling, streaming and SSE, outlines WebSocket's benefits and typical use cases, and then details how STOMP complements WebSocket within Spring's messaging framework, including configuration and message flow.

MessageBrokerReal-TimeWebSocket
0 likes · 27 min read
Why WebSocket? Advantages, Comparison, and STOMP on Spring WebSocket
Sohu Tech Products
Sohu Tech Products
Mar 23, 2022 · Backend Development

Building a Simple Spring IOC Container: XML and Annotation‑Based Bean Assembly

This article demonstrates how to create a lightweight Spring‑style IoC container in Java by parsing a properties file for XML‑like configuration, implementing annotation‑driven bean registration with a custom @Bean annotation, and adding automatic field injection using a custom @Autowired annotation, complete with full source code examples.

IoCReflectionannotation
0 likes · 11 min read
Building a Simple Spring IOC Container: XML and Annotation‑Based Bean Assembly
Top Architect
Top Architect
Mar 21, 2022 · Backend Development

How Spring Resolves Bean Circular Dependencies with a Three‑Level Cache

This article explains Spring's bean lifecycle, the three‑level cache mechanism (singletonObjects, earlySingletonObjects, singletonFactories) used to break circular dependencies, the role of Aware interfaces and BeanPostProcessor, and why a second‑level cache is essential when AOP proxies are involved.

Three-level Cacheaopbackend-development
0 likes · 9 min read
How Spring Resolves Bean Circular Dependencies with a Three‑Level Cache
Java High-Performance Architecture
Java High-Performance Architecture
Mar 21, 2022 · Backend Development

Boost Spring Cache Performance with Custom Annotations and a SCAN‑Based RedisCacheWriter

This article explains how to enhance Spring Cache by creating custom cache annotations, replacing the costly KEYS command with SCAN in a rewritten DefaultRedisCacheWriter, and dynamically registering RedisCacheManager beans to support per‑module TTL and transaction‑aware caching, all illustrated with full Java code examples.

BackendCacheannotations
0 likes · 28 min read
Boost Spring Cache Performance with Custom Annotations and a SCAN‑Based RedisCacheWriter
Top Architect
Top Architect
Mar 20, 2022 · Backend Development

Understanding Spring's @Transactional Annotation and Its AOP Implementation

This article explains how Spring's @Transactional annotation works by leveraging AOP and dynamic proxies, detailing the bean post‑processor, pointcut definition, proxy creation, interceptor chain, TransactionInterceptor logic, and the transaction commit/rollback process with illustrative code snippets and diagrams.

aopjavaspring
0 likes · 9 min read
Understanding Spring's @Transactional Annotation and Its AOP Implementation
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Mar 20, 2022 · Backend Development

Java News: JDK 18/19 Updates, Spring Framework Releases, New Value Objects JEP

This roundup covers recent Java ecosystem developments, including the promotion of the Value Objects (Preview) JEP to candidate status, release notes for JDK 18 and early‑access JDK 19 builds, multiple Spring project updates such as Spring Boot 2.7.0‑M1, Spring Data 3.0‑M2 with ListCrudRepository, Spring Security enhancements, as well as Quarkus 2.7.2.Final and a new early‑access version of JReleaser adding Windows resources to jpackage.

BackendJDKOpenJDK
0 likes · 7 min read
Java News: JDK 18/19 Updates, Spring Framework Releases, New Value Objects JEP
macrozheng
macrozheng
Mar 18, 2022 · Backend Development

How Spring Solves Circular Dependencies: Deep Dive into Three-Level Caches

This article explains why Spring’s circular dependency problem only occurs with singleton beans, how constructor versus setter injection affects resolution, and why Spring uses a three‑level cache (singletonObjects, earlySingletonObjects, singletonFactories) to expose incomplete beans and support proxy creation without breaking the bean lifecycle.

SingletonThree-level Cachespring
0 likes · 12 min read
How Spring Solves Circular Dependencies: Deep Dive into Three-Level Caches
Meituan Technology Team
Meituan Technology Team
Mar 17, 2022 · Backend Development

Sonic: Meituan's Hot Deployment IDEA Plugin – Architecture and Implementation

The article details Meituan's internal Sonic IDEA plugin for remote and local hot deployment, explaining why hot deployment is needed, its architecture, instrumentation techniques, DCEVM integration, file‑watching, class reloading, and support for Spring Bean, Spring XML and MyBatis, along with adoption statistics and performance benefits.

DCEVMHot DeploymentIDEA Plugin
0 likes · 19 min read
Sonic: Meituan's Hot Deployment IDEA Plugin – Architecture and Implementation
Java High-Performance Architecture
Java High-Performance Architecture
Mar 17, 2022 · Backend Development

Mastering MyBatis Streaming Queries: Reduce Memory Usage and Avoid Cursor Closure Errors

This article explains what streaming queries are, why they save memory compared to pagination, details the MyBatis Cursor interface and its methods, demonstrates how to implement streaming queries with code examples, and presents three solutions—using SqlSessionFactory, TransactionTemplate, and @Transactional—to keep the database connection open and prevent cursor‑closed errors.

CursorMyBatisStreaming Query
0 likes · 7 min read
Mastering MyBatis Streaming Queries: Reduce Memory Usage and Avoid Cursor Closure Errors
Sohu Tech Products
Sohu Tech Products
Mar 16, 2022 · Backend Development

Enabling Spring @Async to Support Placeholders and SpEL Expressions

This article explains how to modify Spring's @Async annotation so that its value attribute can resolve placeholders or SpEL expressions, demonstrates a working demo, shows the required code changes using EmbeddedValueResolver, and shares debugging tricks and related Java language features.

AsyncJDKOpenSource
0 likes · 14 min read
Enabling Spring @Async to Support Placeholders and SpEL Expressions
macrozheng
macrozheng
Mar 16, 2022 · Backend Development

Build a Mini Spring IoC Container in 5 Minutes: Hands‑On Tutorial

This article walks through the fundamentals of Spring’s IoC container by manually implementing a lightweight version, covering concepts such as IOC, DI, bean definitions, resource loading, bean registration, and a simple BeanFactory with example code and a test demonstrating singleton caching.

BeanFactoryIoCbackend-development
0 likes · 10 min read
Build a Mini Spring IoC Container in 5 Minutes: Hands‑On Tutorial
Java Captain
Java Captain
Mar 15, 2022 · Backend Development

Why Enterprise Java Projects Turn Into Over‑Engineered Monsters

The article sarcastically critiques the over‑engineered nature of enterprise Java projects, illustrating how simple tasks become tangled in excessive classes, interfaces, factories, dependency‑injection frameworks, XML configurations, massive JARs, and IDE bloat, ultimately leading to deployment failures due to environment mismatches.

Design Patternsdependency-injectionenterprise architecture
0 likes · 5 min read
Why Enterprise Java Projects Turn Into Over‑Engineered Monsters
Top Architect
Top Architect
Mar 14, 2022 · Backend Development

Understanding Spring Controller Scope: Singleton vs Prototype and Best Practices

This article explains why Spring MVC controllers are singleton by default, demonstrates the thread‑unsafe behavior of using instance fields, shows how applying @Scope("prototype") changes the behavior, and provides practical recommendations such as avoiding mutable fields, using prototype scope or ThreadLocal for safe controller design.

ControllerSingletonjava
0 likes · 6 min read
Understanding Spring Controller Scope: Singleton vs Prototype and Best Practices
Cognitive Technology Team
Cognitive Technology Team
Mar 13, 2022 · Backend Development

Understanding Synchronous vs Asynchronous Event Execution in Spring's SimpleApplicationEventMulticaster

After upgrading a core component, a previously synchronous domain event in Spring became asynchronous, causing runtime errors; this article explains the underlying mechanism, shows the relevant source code of SimpleApplicationEventMulticaster, and clarifies how the presence or absence of a configured thread pool determines whether events are processed synchronously or asynchronously.

AsynchronousEventThreadPool
0 likes · 3 min read
Understanding Synchronous vs Asynchronous Event Execution in Spring's SimpleApplicationEventMulticaster
转转QA
转转QA
Mar 10, 2022 · Backend Development

Automated Post‑Deployment Interface Testing Using TestNG, Spring and MQ Integration

The article describes a solution that automatically triggers interface test cases after a service deployment by listening to deployment‑success MQ messages, dynamically invoking TestNG with service‑specific IPs, and integrating Spring bean registration to simplify test code while handling dynamic nodes, reporting, and common pitfalls.

Automated TestingBeanFactoryMQ
0 likes · 11 min read
Automated Post‑Deployment Interface Testing Using TestNG, Spring and MQ Integration
macrozheng
macrozheng
Mar 10, 2022 · Backend Development

Master Spring Annotations: @Component vs @Bean, @Autowired vs @Resource, @ControllerAdvice

This article explains several often‑confused Spring annotations—including the differences between @Component and @Bean, the injection behaviors of @Autowired versus @Resource, the roles of @Component, @Repository, @Service, and @Controller, the purpose of @Configuration and @ControllerAdvice, and provides practical code examples for each.

Exception Handlingannotationsdependency-injection
0 likes · 11 min read
Master Spring Annotations: @Component vs @Bean, @Autowired vs @Resource, @ControllerAdvice
Code Ape Tech Column
Code Ape Tech Column
Mar 10, 2022 · Backend Development

10 Common Pitfalls in Java Concurrency and How to Avoid Them

This article outlines ten typical concurrency pitfalls in Java—including SimpleDateFormat thread‑safety, double‑checked locking flaws, volatile atomicity limits, deadlocks, lock release issues, HashMap race conditions, default thread‑pool misuse, @Async thread explosion, spin‑lock CPU waste, and ThreadLocal memory leaks—providing explanations, code examples, and practical solutions for each.

concurrencyjavamultithreading
0 likes · 20 min read
10 Common Pitfalls in Java Concurrency and How to Avoid Them
Sohu Tech Products
Sohu Tech Products
Mar 9, 2022 · Backend Development

Understanding the Spring Transaction Rollback Bug and Its Resolution

This article analyzes a Spring transaction rollback issue caused by the use of pattern‑based exception matching, explains why certain custom exceptions trigger unexpected rollbacks, traces the problem through source code and GitHub issues, and describes how the Spring team fixed it with type‑safe rollback rules and documentation updates.

BackendDocumentationbug
0 likes · 22 min read
Understanding the Spring Transaction Rollback Bug and Its Resolution