Tagged articles
5000 articles
Page 45 of 50
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.

BackendFactoryJava
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.

AOPBackendJava
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.

AOPBackendIdempotency
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.

Backend DevelopmentDistributed SchedulingJava
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.

AOPAspect Oriented ProgrammingJava
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.

Backend DevelopmentDynamic ConfigurationJava
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.

Fabric8JavaKubernetes
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.

JavaOCRREST API
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.

AuthenticationAuthorizationJava
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.

Backend DevelopmentFrameworkJava
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 StructureGuavaJava
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.

JavaLuaRedis
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.

Backend DevelopmentControllerException Handling
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.

BackendFunctionalInterfaceJava
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.

Backend DevelopmentJavaUtility Classes
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.

AOPDistributed SystemsJava
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 InterfacesJavaLambda
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.

InterceptorJavaMyBatis
0 likes · 11 min read
Low‑Cost Database Stability Improvement and Lightweight Table Partitioning Using MyBatis Interceptor
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 IDEAJavacheckstyle
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.

Backend DevelopmentJavaMaven
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.

JavaMavenObfuscation
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.

AsynchronousCompletableFutureJava
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.

BackendJavaNacos
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.

BackendJavaMaven
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.

Backend DevelopmentJavaSpring Boot
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.

BackendDebounceJava
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
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-EsElasticsearchJava
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 BoundConcurrencyI/O Bound
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.

Backend DevelopmentJavaSpring Framework
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.

AOPAdviceBackend Development
0 likes · 10 min read
Dynamic Hot‑Pluggable AOP in Spring: Managing Advice at Runtime
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 26, 2024 · Databases

Easy-Query: One of the Best Java ORM Libraries

Easy-Query is a Java ORM framework offering strong-typed, database-agnostic CRUD operations, complex SQL generation, multi-table joins, group awareness, and extensive function support, demonstrated through numerous code examples covering queries, joins, subqueries, pagination, and advanced features like enum handling and anonymous type alternatives.

DatabaseEasy-QueryJava
0 likes · 16 min read
Easy-Query: One of the Best Java ORM Libraries
Java Captain
Java Captain
Jan 25, 2024 · Backend Development

Top 20 Classic Spring Boot Interview Questions

This article presents the 20 most common Spring Boot interview questions, covering fundamentals, features, configuration, performance, security, microservices, and deployment, to help job seekers prepare effectively for Spring Boot related positions in the industry.

Backend DevelopmentFrameworkInterview Questions
0 likes · 3 min read
Top 20 Classic Spring Boot Interview Questions
Selected Java Interview Questions
Selected Java Interview Questions
Jan 25, 2024 · Backend Development

Easy-Es: An ORM Framework for Elasticsearch in Java

Easy-Es is a Java ORM framework built on Elasticsearch's RestHighLevelClient that simplifies search‑engine development, offers Mybatis‑Plus‑like usage, provides configuration and dependency details, and includes complete code examples for creating indexes and performing CRUD operations within Spring Boot applications.

Backend DevelopmentEasy-EsElasticsearch
0 likes · 8 min read
Easy-Es: An ORM Framework for Elasticsearch in Java
Architecture Digest
Architecture Digest
Jan 25, 2024 · Backend Development

Understanding Java 8 Functional Interfaces and Stream Operations

This article explains Java 8's lambda expressions, functional interfaces, and the Stream API, demonstrating how immutable values and functions enable concise data processing through lazy and eager evaluation, with practical code examples covering predicates, consumers, mapping, filtering, grouping, and reduction.

CollectorsFunctional InterfacesJava
0 likes · 12 min read
Understanding Java 8 Functional Interfaces and Stream Operations
政采云技术
政采云技术
Jan 25, 2024 · Fundamentals

Java JDK 12‑17 New Features and Enhancements Overview

This article provides a comprehensive overview of the major language and runtime enhancements introduced in JDK 12 through JDK 17, covering switch expressions, micro‑benchmarking with JMH, class‑data sharing, garbage‑collector improvements, new String methods, hidden and sealed classes, records, and unified asynchronous logging, all illustrated with code examples.

Garbage CollectionJDKJMH
0 likes · 23 min read
Java JDK 12‑17 New Features and Enhancements Overview
Architect's Guide
Architect's Guide
Jan 25, 2024 · Backend Development

Automatic Unit Conversion in Java Using Maps and Custom Annotations

This article explains how to automate unit conversions for Java DTOs by first using a Map to mark fields and an enum for conversion types, then enhancing the solution with a custom annotation and reflection to make the process more reusable and maintainable.

BackendJavaReflection
0 likes · 10 min read
Automatic Unit Conversion in Java Using Maps and Custom Annotations
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 25, 2024 · Backend Development

Essential IntelliJ IDEA Plugins for Java Development

This article introduces a curated collection of IntelliJ IDEA plugins—including Java Stream Debugger, JClassLib bytecode viewer, Maven Helper, JRebel, and many others—detailing their features, usage instructions, and benefits to enhance Java development productivity and code quality.

IDE pluginsIntelliJ IDEAJava
0 likes · 9 min read
Essential IntelliJ IDEA Plugins for Java Development
Su San Talks Tech
Su San Talks Tech
Jan 25, 2024 · Backend Development

Six Powerful Strategies for Implementing Scheduled Tasks in Java

This article reviews six practical approaches for scheduling recurring jobs in Java—including custom threads, JDK ScheduledExecutorService, Spring @Scheduled, Quartz, Elastic‑Job, and XXL‑JOB—highlighting their usage, configuration steps, and considerations for clustering and concurrency.

Distributed SchedulingJavaQuartz
0 likes · 6 min read
Six Powerful Strategies for Implementing Scheduled Tasks in Java
DeWu Technology
DeWu Technology
Jan 24, 2024 · Backend Development

Dynamic Parameter Handling with Spring SpEL and Strategy Pattern

The article demonstrates replacing fragile if‑else channel logic with a Strategy pattern and Spring Expression Language, storing parameter mappings in a database so that new payment channels or Excel formats can be added simply by configuring SpEL expressions, achieving a flexible, maintainable, data‑driven solution.

BackendDynamic ConfigurationJava
0 likes · 17 min read
Dynamic Parameter Handling with Spring SpEL and Strategy Pattern
Java High-Performance Architecture
Java High-Performance Architecture
Jan 24, 2024 · Backend Development

8 Powerful Ways to Implement Asynchronous Execution in Java

Understanding asynchronous execution in Java can dramatically reduce latency for tasks such as sending SMS, emails, or updating data, and this article walks through eight practical implementations—from raw Threads and Futures to Spring @Async, ApplicationEvent, message queues, ThreadUtil, and Guava ListenableFuture—complete with code samples and best‑practice tips.

AsynchronousCompletableFutureConcurrency
0 likes · 13 min read
8 Powerful Ways to Implement Asynchronous Execution in Java
Java Backend Technology
Java Backend Technology
Jan 24, 2024 · Backend Development

How to Export Any Java Object List to Excel Using Reflection and CSV

This article demonstrates a step‑by‑step method for exporting a list of unknown Java objects to an Excel/CSV file by leveraging reflection to dynamically generate headers and rows, complete with Maven dependencies, utility code, usage examples, and an extensible annotation‑based approach.

CSVJavaReflection
0 likes · 11 min read
How to Export Any Java Object List to Excel Using Reflection and CSV
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 24, 2024 · Backend Development

Master Dynamic Multi-DataSource Switching in Spring Boot 2.7

This tutorial explains why enterprise applications need multiple data sources, outlines the scenarios such as business isolation, migration, performance and maintainability, and provides a step‑by‑step implementation of dynamic data source routing in Spring Boot using custom context holders, routing classes, annotations, aspects, configuration, and web‑request control.

Backend DevelopmentDynamic RoutingJava
0 likes · 12 min read
Master Dynamic Multi-DataSource Switching in Spring Boot 2.7
Architect
Architect
Jan 23, 2024 · Backend Development

How I Cut a Java Service’s Response Time from Seconds to Milliseconds with Arthas

The article details how a high‑traffic Helios scoring service, originally taking several seconds to return a day’s worth of data, was profiled with Arthas and iteratively optimized through four code revisions, ultimately reducing latency to around 60 ms while exposing key performance pitfalls such as object creation, date formatting, and trivial list operations.

ArthasBackendJava
0 likes · 35 min read
How I Cut a Java Service’s Response Time from Seconds to Milliseconds with Arthas
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Jan 23, 2024 · Backend Development

Understanding Java Annotations: Types, Usage, and Implementation

This article provides a comprehensive overview of Java annotations, covering their definition, common applications, classification into standard, meta, and custom annotations, detailed examples of built‑in annotations such as @Override, @Deprecated, @SuppressWarnings, and guidance on creating and using custom annotations with code snippets.

Backend DevelopmentJavaReflection
0 likes · 8 min read
Understanding Java Annotations: Types, Usage, and Implementation
macrozheng
macrozheng
Jan 23, 2024 · Backend Development

Master Spring Boot 3 Http Interface: Declarative Remote Calls with WebFlux

This article explains how Spring Boot 3's Http Interface feature enables declarative HTTP service calls by defining Java interfaces, covering dependency setup, interface definition, token handling, configuration, controller integration, testing with Postman, and a brief discussion of its WebFlux dependency.

Declarative RESTHTTP InterfaceJava
0 likes · 10 min read
Master Spring Boot 3 Http Interface: Declarative Remote Calls with WebFlux
Code Ape Tech Column
Code Ape Tech Column
Jan 23, 2024 · Information Security

Implementing Sa-Token Authentication and Authorization in Spring Cloud Gateway

This article demonstrates how to replace heavyweight Spring Security with the lightweight Sa-Token framework by configuring token generation, session management, role and permission retrieval, and global gateway filters in a Spring Cloud micro‑service architecture, including complete code examples and deployment tips.

AuthenticationAuthorizationJava
0 likes · 20 min read
Implementing Sa-Token Authentication and Authorization in Spring Cloud Gateway
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 23, 2024 · Information Security

Create a Secure OAuth2 Authorization Server with Spring Boot 3.1 & JDK 17

This guide walks through setting up Spring Authorization Server on Spring Boot 3.1 with JDK 17, covering environment setup, required dependencies, custom security filter chains, in‑memory user and client configurations, JWT signing, endpoint settings, consent service, and step‑by‑step testing of the authorization code flow.

Authorization ServerJavaOAuth2
0 likes · 9 min read
Create a Secure OAuth2 Authorization Server with Spring Boot 3.1 & JDK 17
Architect
Architect
Jan 22, 2024 · Backend Development

Designing a Unified API Response and Global Exception Handling in Spring Boot

This article walks through creating a standardized JSON response structure with a Result enum and wrapper class, demonstrates how to return it from controllers, implements a @ControllerAdvice‑based global exception handler with custom exceptions, and configures Logback for comprehensive logging in Spring Boot applications.

Exception HandlingJavaSpring Boot
0 likes · 17 min read
Designing a Unified API Response and Global Exception Handling in Spring Boot
IT Services Circle
IT Services Circle
Jan 22, 2024 · Backend Development

Understanding DDD Layered Architecture and Its Implementation in Java

This article explains the limitations of traditional MVC, introduces the four‑layer DDD architecture (Interface, Application, Domain, Infrastructure), discusses the Dependency Inversion Principle, compares package‑level and Maven‑module implementations, and details the roles and conversions of Entity, DO, and DTO models for Java projects.

Backend DevelopmentDDDDomain Modeling
0 likes · 13 min read
Understanding DDD Layered Architecture and Its Implementation in Java
Java Tech Enthusiast
Java Tech Enthusiast
Jan 22, 2024 · Backend Development

Transitioning from Java to Rust: Performance, Concurrency, and Ecosystem Insights

Switching from Java to Rust can shrink binaries from dozens of megabytes to a few kilobytes, cut memory use and latency dramatically, and provide safer, built‑in concurrency and async support, while Java remains attractive for its low learning curve and massive library ecosystem, prompting developers to wrap Rust crates for Java‑like productivity as they adopt Rust long‑term.

AsyncBackend DevelopmentConcurrency
0 likes · 10 min read
Transitioning from Java to Rust: Performance, Concurrency, and Ecosystem Insights
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Jan 22, 2024 · Fundamentals

Understanding JVM Architecture and Core Mechanisms

This article provides a comprehensive overview of the Java Virtual Machine, detailing its architecture, class loading process, runtime data areas, and execution engine, including interpreter and JIT compilation, to help readers grasp JVM fundamentals for Java development and interview preparation.

JITJVMJava
0 likes · 8 min read
Understanding JVM Architecture and Core Mechanisms
Selected Java Interview Questions
Selected Java Interview Questions
Jan 22, 2024 · Backend Development

Why HikariCP Is So Fast: An In‑Depth Source Code Exploration

This article examines the design and implementation details of HikariCP—Spring Boot's default JDBC connection pool—explaining how its dual‑pool architecture, FastList collection, custom ConcurrentBag, bytecode‑level optimizations, and efficient connection acquisition and release mechanisms together deliver exceptional performance for Java backend applications.

BackendConcurrencyConnection Pool
0 likes · 14 min read
Why HikariCP Is So Fast: An In‑Depth Source Code Exploration
macrozheng
macrozheng
Jan 22, 2024 · Backend Development

Why Maven Version Ranges Can Break Your Build—and How to Fix Them

This article explains Maven's version range syntax, illustrates how open-ended ranges like [2.3.0,) can cause unpredictable dependency versions and build failures, and offers practical solutions such as specifying exact versions or using dependencyManagement to ensure stable, reproducible builds.

Build StabilityJavaVersion Ranges
0 likes · 7 min read
Why Maven Version Ranges Can Break Your Build—and How to Fix Them
Su San Talks Tech
Su San Talks Tech
Jan 22, 2024 · Backend Development

How to Supercharge Excel-to-Database Imports with Async and Thread‑Pool Tuning in Java

This article walks through the common slow Excel‑to‑DB import pattern, shows why it becomes a bottleneck, and presents three progressive optimizations—including caching, asynchronous multi‑threaded reading, and double‑async processing—along with detailed Spring @Async thread‑pool configuration and EasyExcel alternatives, all illustrated with complete Java code samples.

AsyncDatabaseExcel
0 likes · 17 min read
How to Supercharge Excel-to-Database Imports with Async and Thread‑Pool Tuning in Java
FunTester
FunTester
Jan 22, 2024 · Fundamentals

Boost Java Serialization Performance with ChronicleWire: A Practical Guide

This article explains Java's built‑in serialization drawbacks, introduces the open‑source ChronicleWire library as a high‑performance alternative supporting multiple data formats, and provides step‑by‑step code examples for encoding, decoding, and compatibility handling in real‑world Java applications.

BinaryChronicleWireData Formats
0 likes · 13 min read
Boost Java Serialization Performance with ChronicleWire: A Practical Guide
Architect's Guide
Architect's Guide
Jan 21, 2024 · Backend Development

Retrieving User IP Address and Geolocation in Java with ip2region

This article explains how to obtain a client’s IP address from an HttpServletRequest, convert it to a geographic location using the ip2region library, and provides multiple Java implementation options, Maven dependencies, and performance testing commands for efficient backend IP lookup.

BackendIP geolocationJava
0 likes · 15 min read
Retrieving User IP Address and Geolocation in Java with ip2region
Selected Java Interview Questions
Selected Java Interview Questions
Jan 20, 2024 · Backend Development

Implementing Sa-Token Authentication in Spring Cloud Gateway with Redis and Nacos

This article demonstrates how to replace heavyweight Spring Security with the lightweight Sa-Token framework by configuring token generation, session storage in Redis, service discovery via Nacos, and permission checks in a Spring Cloud Gateway micro‑service architecture, complete with code examples and deployment settings.

AuthenticationJavaNacos
0 likes · 21 min read
Implementing Sa-Token Authentication in Spring Cloud Gateway with Redis and Nacos
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 20, 2024 · Backend Development

Mastering Spring’s Event System: Decoupling, Asynchronous Handling, and Generic Events

This article explains Spring’s event mechanism, covering its observer‑based design, benefits such as decoupling and asynchronous handling, standard framework events, and advanced generic event techniques using subclassing or ResolvableTypeProvider to achieve type‑safe, flexible event publishing.

Backend DevelopmentGeneric TypesJava
0 likes · 7 min read
Mastering Spring’s Event System: Decoupling, Asynchronous Handling, and Generic Events
JD Retail Technology
JD Retail Technology
Jan 19, 2024 · Backend Development

Comprehensive Guide to Upgrading from JDK8/11 to JDK17: Performance Gains, New Language Features, and Migration Steps

This article explains why upgrading from JDK8 or JDK11 to the long‑term support JDK17 brings significant garbage‑collector performance improvements, new language features, and better framework compatibility, and provides detailed migration steps, Maven and SpringBoot configuration changes, and troubleshooting tips.

GarbageCollectionJDKJava
0 likes · 16 min read
Comprehensive Guide to Upgrading from JDK8/11 to JDK17: Performance Gains, New Language Features, and Migration Steps
Java Tech Enthusiast
Java Tech Enthusiast
Jan 19, 2024 · Fundamentals

Understanding Maven Version Ranges and Dependency Management

Maven’s version ranges let you specify acceptable artifact versions, but open‑ended ranges like [2.3.0,) cause Maven to fetch the newest matching release, leading to nondeterministic builds and potential incompatibilities, so you should pin exact versions and use dependencyManagement for consistent, stable builds.

JavaMavenVersion Ranges
0 likes · 6 min read
Understanding Maven Version Ranges and Dependency Management
Architecture Digest
Architecture Digest
Jan 19, 2024 · Backend Development

Assembling Hierarchical Tree Structures with Java Streams, Caching and Message Queues

This article demonstrates how to efficiently build department and regional hierarchical trees in Java by fetching all records in a single database query, using Stream API, Lambda expressions, in‑memory grouping, Redis caching and RocketMQ for asynchronous updates, achieving sub‑second response times even with tens of thousands of nodes.

BackendJavaStream
0 likes · 11 min read
Assembling Hierarchical Tree Structures with Java Streams, Caching and Message Queues
AntTech
AntTech
Jan 19, 2024 · Backend Development

Fury: A High‑Performance Multi‑Language Serialization Framework and Its Path to the Apache Incubator

Fury is a JIT‑compiled, zero‑copy, multi‑language serialization framework that delivers up to 170× speed improvements over traditional serializers, supports Java, Python, C++, Go, JavaScript, Scala and Rust, and has recently been donated to the Apache Software Foundation after a successful open‑source journey.

ApacheCross-languageFury
0 likes · 17 min read
Fury: A High‑Performance Multi‑Language Serialization Framework and Its Path to the Apache Incubator
Java High-Performance Architecture
Java High-Performance Architecture
Jan 19, 2024 · Backend Development

Mastering Data Isolation in Java: MyBatis Interceptor & Custom Annotations

This article walks through the challenges of environment‑specific data isolation in a Java project, explains why adding an env column to every table is impractical, and presents a clean solution using a MyBatis interceptor that rewrites SQL and custom annotations to control filtering, ensuring safe, maintainable code across pre‑release, gray, and production environments.

Custom AnnotationData IsolationInterceptor
0 likes · 12 min read
Mastering Data Isolation in Java: MyBatis Interceptor & Custom Annotations
Architect's Guide
Architect's Guide
Jan 19, 2024 · Backend Development

Implementing a Graceful Retry Mechanism for Third‑Party API Calls in Spring Boot

This article explains why retry mechanisms are essential for unstable third‑party API calls, introduces Spring Retry, demonstrates how to configure synchronous and asynchronous retries, handle exception inclusion/exclusion, integrate circuit‑breaker fallback with Hystrix, and provides performance testing guidance, all with practical code examples.

Circuit BreakerHystrixJava
0 likes · 8 min read
Implementing a Graceful Retry Mechanism for Third‑Party API Calls in Spring Boot