Tagged articles
5000 articles
Page 46 of 50
Java Architect Essentials
Java Architect Essentials
Jan 18, 2024 · Backend Development

Implement Dynamic Data Source Switching in Spring Boot with ThreadLocal and AbstractRoutingDataSource

This tutorial explains how to switch between multiple databases in a Spring Boot application by implementing ThreadLocal and AbstractRoutingDataSource, covering code implementation, configuration, testing, annotation-based switching, and dynamic addition of data sources with detailed examples and practical guidance.

DynamicDataSourceJavaMybatis-Plus
0 likes · 15 min read
Implement Dynamic Data Source Switching in Spring Boot with ThreadLocal and AbstractRoutingDataSource
Architect
Architect
Jan 18, 2024 · Backend Development

How Vivo Supercharged Dubbo Routing with Async Caching and Load‑Balancing Optimizations

This article analyzes the CPU‑heavy routing and load‑balancing modules of Dubbo in a large‑scale microservice cluster, identifies O(n) traversal as the root cause, and presents a step‑by‑step redesign—including disabling unused routers, caching route results with epoch validation, BitMap‑based intersection, and grouped routing—that reduces CPU usage by up to 27% and doubles TPS when provider instances exceed 2,000.

CachingDubboJava
0 likes · 21 min read
How Vivo Supercharged Dubbo Routing with Async Caching and Load‑Balancing Optimizations
Architecture Digest
Architecture Digest
Jan 18, 2024 · Backend Development

Useful Open-Source Libraries for Java Developers

This article presents a curated collection of essential open‑source Java libraries—including logging, JSON parsing, testing, utility, HTTP, XML, Excel, bytecode, database connection pooling, messaging, PDF, date‑time, collections, email, HTML parsing, encryption, embedded databases, JDBC debugging, serialization, networking, and more—to help developers boost productivity and write better code.

JSONJavaopen source libraries
0 likes · 10 min read
Useful Open-Source Libraries for Java Developers
macrozheng
macrozheng
Jan 18, 2024 · Backend Development

28 Essential IntelliJ IDEA Tips to Supercharge Your Java Development

This article compiles 28 practical IntelliJ IDEA shortcuts, settings tweaks, and plugin recommendations that help Java developers quickly navigate code history, manage memory, customize keymaps, automate imports, visualize dependencies, and improve overall coding efficiency.

IDE shortcutsIntelliJ IDEAJava
0 likes · 14 min read
28 Essential IntelliJ IDEA Tips to Supercharge Your Java Development
Code Ape Tech Column
Code Ape Tech Column
Jan 18, 2024 · Backend Development

Integrating DDD Four‑Layer Architecture and Microservice SDK with the D3boot Framework

This article explains how to combine Domain‑Driven Design's four‑layer architecture with a microservice‑oriented application SDK, introduces the D3boot lightweight framework and its modular base components, and shows how the approach simplifies building SaaS and PaaS systems while keeping code reusable and maintainable.

DDDFrameworkJava
0 likes · 10 min read
Integrating DDD Four‑Layer Architecture and Microservice SDK with the D3boot Framework
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 18, 2024 · Backend Development

Understanding Java's UUID.randomUUID() Implementation

This article examines the inner workings of Java's java.util.UUID class, detailing how UUID.randomUUID() generates version‑4 UUIDs using SecureRandom, the bitwise adjustments for version and variant fields, and the constructor logic that assembles the final 128‑bit identifier.

BackendJavaSecureRandom
0 likes · 9 min read
Understanding Java's UUID.randomUUID() Implementation
Architect
Architect
Jan 17, 2024 · Backend Development

How to Build a Custom Spring Security Authentication Flow with Redis Token Management

This article walks through the complete process of implementing a custom login authentication in Spring Boot, including custom authentication filters, success/failure handlers, a token stored in Redis, role‑based URL security, and detailed configuration of Spring Security headers and session handling.

Custom AuthenticationJavaRedis
0 likes · 24 min read
How to Build a Custom Spring Security Authentication Flow with Redis Token Management
JD Tech
JD Tech
Jan 17, 2024 · Fundamentals

Best Practices for Naming, Comments, and Code Structure in Java Development

This article provides a comprehensive guide to Java development fundamentals, covering naming conventions, comment quality, class and method definitions, object design patterns, and performance considerations such as immutable types, sealed classes, and the Valhalla project, with practical code examples and best‑practice recommendations.

Javabest-practicescode-quality
0 likes · 31 min read
Best Practices for Naming, Comments, and Code Structure in Java Development
High Availability Architecture
High Availability Architecture
Jan 17, 2024 · Backend Development

Rate Limiting Algorithms: Fixed Window, Sliding Window, Leaky Bucket, and Token Bucket – Principles, Java Implementations, Pros & Cons

This article explains why rate limiting is essential for high‑concurrency systems, defines rate limiting, introduces four common algorithms (fixed‑window, sliding‑window, leaky‑bucket, token‑bucket), provides Java code examples for each, compares their advantages and disadvantages, and shows practical usage with Guava's RateLimiter and AOP annotations.

AOPBackendJava
0 likes · 17 min read
Rate Limiting Algorithms: Fixed Window, Sliding Window, Leaky Bucket, and Token Bucket – Principles, Java Implementations, Pros & Cons
JD Cloud Developers
JD Cloud Developers
Jan 16, 2024 · Backend Development

Choosing the Right Java Local Cache: Guava vs Caffeine vs Ehcache

An in‑depth comparison of popular Java in‑process caching solutions—Guava, Caffeine, and Ehcache—covers their expiration policies, capacity limits, eviction strategies, monitoring features, performance optimizations, and ideal use cases, helping developers select the most suitable cache for their applications.

CacheCaffeineEhcache
0 likes · 10 min read
Choosing the Right Java Local Cache: Guava vs Caffeine vs Ehcache
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 16, 2024 · Backend Development

Spring 6: HTTP Interfaces, RestClient, i18n ProblemDetail, Virtual Threads

This guide walks through Spring 6’s new capabilities—including Java 17 baseline, Jakarta namespace migration, HTTP interface proxies with @HttpExchange, WebClient integration via JDK HttpClient, internationalized ProblemDetail handling, the RestClient API, and executing asynchronous tasks on virtual threads—all demonstrated with concise code examples.

HTTPJavaProblemDetail
0 likes · 7 min read
Spring 6: HTTP Interfaces, RestClient, i18n ProblemDetail, Virtual Threads
Java Captain
Java Captain
Jan 15, 2024 · Backend Development

Custom Exception Handling for Feign Calls in Spring Distributed Services

This article explains how to implement unified, user‑friendly exception handling for Feign‑based service calls in a Spring distributed architecture by customizing ErrorDecoder, defining result objects, and using global @ControllerAdvice to return clear error codes and messages to front‑end users.

BackendException HandlingJava
0 likes · 12 min read
Custom Exception Handling for Feign Calls in Spring Distributed Services
Java Captain
Java Captain
Jan 15, 2024 · Backend Development

Implementing Interface Rate Limiting with Spring Interceptor and Redis

This article explains how to prevent API abuse by using a Spring Interceptor combined with Redis to count requests per IP and URI, demonstrates step‑by‑step code implementations, discusses custom annotations, mapping rules, time‑window challenges, path‑parameter handling, and real‑IP extraction for robust backend rate limiting.

BackendInterceptorJava
0 likes · 15 min read
Implementing Interface Rate Limiting with Spring Interceptor and Redis
Architect
Architect
Jan 15, 2024 · Backend Development

Implementing Data Isolation in MyBatis with a Custom Interceptor and Annotations

This article walks through the problem of sharing a single database across pre‑release, gray, and production environments, explains why adding an env column to dozens of tables is error‑prone, and demonstrates a MyBatis interceptor‑based solution with custom annotations that isolates data while preserving backward compatibility.

BackendCustom AnnotationData Isolation
0 likes · 14 min read
Implementing Data Isolation in MyBatis with a Custom Interceptor and Annotations
Selected Java Interview Questions
Selected Java Interview Questions
Jan 15, 2024 · Backend Development

Preventing Inventory Overselling in High‑Concurrency Scenarios: Java, Redis Distributed Lock, MySQL Row Lock, Optimistic Lock, and SQL Solutions

The article analyzes the inventory oversell problem caused by concurrent purchase requests and presents four backend solutions—including a Redis distributed lock, MySQL row lock, optimistic locking with version fields, and conditional SQL updates—illustrated with Java code and SQL examples to ensure data consistency.

ConcurrencyJavaOptimistic Lock
0 likes · 10 min read
Preventing Inventory Overselling in High‑Concurrency Scenarios: Java, Redis Distributed Lock, MySQL Row Lock, Optimistic Lock, and SQL Solutions
DaTaobao Tech
DaTaobao Tech
Jan 15, 2024 · Backend Development

Refactoring Java Sale‑Type Parsing: From Simple Method to Design Patterns

Starting from a basic Java method that maps a sale‑type string to an integer, the article incrementally refactors the code by applying null‑safe utilities, constants, static methods, ternary/Optional expressions, enums with lookup maps, a combined relation enum, and finally a Strategy pattern with a container, illustrating how each step improves safety, readability, extensibility, and testability.

Code RefactoringDesign PatternsEnum
0 likes · 13 min read
Refactoring Java Sale‑Type Parsing: From Simple Method to Design Patterns
Code Ape Tech Column
Code Ape Tech Column
Jan 15, 2024 · Backend Development

Understanding the Internal Working of Redisson DelayedQueue

This article explains how Redisson's DelayedQueue implements a distributed delayed message queue, covering basic usage, internal data structures, the overall processing flow, and detailed code analysis of sending, receiving, and initializing delayed messages in Java.

DelayedQueueDistributedQueueJava
0 likes · 16 min read
Understanding the Internal Working of Redisson DelayedQueue
FunTester
FunTester
Jan 14, 2024 · Backend Development

How to Build a More Flexible Java Phaser: Introducing FunPhaser

This article explains the limitations of java.util.concurrent.Phaser for large‑scale asynchronous tasks, presents a custom FunPhaser implementation that removes the party‑count ceiling, details its design, API, and usage examples, and compares it with the original Phaser approach.

ConcurrencyCustom SynchronizerJava
0 likes · 8 min read
How to Build a More Flexible Java Phaser: Introducing FunPhaser
Java Architect Essentials
Java Architect Essentials
Jan 14, 2024 · Fundamentals

Essential IntelliJ IDEA Tips to Boost Java Development Efficiency

This article presents a comprehensive collection of practical IntelliJ IDEA tips for Java developers, covering code history viewing, memory settings, Eclipse keymap, case‑insensitive suggestions, disabling inspections, documentation templates, method separators, multi‑line tabs, bracket navigation, code completion, fuzzy search, class preview, call hierarchy, Maven dependency visualization, SSH tool, and more to significantly boost coding efficiency.

IDE TipsIntelliJ IDEAJava
0 likes · 12 min read
Essential IntelliJ IDEA Tips to Boost Java Development Efficiency
Selected Java Interview Questions
Selected Java Interview Questions
Jan 14, 2024 · Backend Development

Introducing Liteflow: A Lightweight Java Rule Engine for Backend Development

This article explains the concepts, architecture, and practical usage of Liteflow, a lightweight Java rule engine that integrates with Spring Boot, supports various rule file formats, multiple component types, data contexts, and configuration options for building complex workflow processes in backend applications.

JavaLiteFlowRule Engine
0 likes · 9 min read
Introducing Liteflow: A Lightweight Java Rule Engine for Backend Development
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 14, 2024 · Backend Development

Master Spring Boot 3.0.9: Access Command‑Line, JSON, YAML, Encryption & More

This guide demonstrates how to retrieve command‑line arguments, use JSON‑encoded properties, load external configuration files, encrypt values, parse YAML, generate random properties, handle internationalization, customize the banner, and configure the application context in Spring Boot 3.0.9, providing code examples for each feature.

JavaSpring BootYAML
0 likes · 9 min read
Master Spring Boot 3.0.9: Access Command‑Line, JSON, YAML, Encryption & More
Architect
Architect
Jan 13, 2024 · Backend Development

Mastering API Retry Strategies in Java: 8 Proven Techniques

This article walks through eight practical ways to implement retry mechanisms for remote API calls in Java, covering simple loops, recursion, Apache HttpClient settings, Spring Retry, Resilience4j, custom utilities, asynchronous thread‑pool retries, and message‑queue based retries, while highlighting trade‑offs and best‑practice guidelines.

Best PracticesConcurrencyHttpClient
0 likes · 18 min read
Mastering API Retry Strategies in Java: 8 Proven Techniques
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 13, 2024 · Big Data

What Is Kafka? Overview, Architecture, Features, Deployment, and Sample Code

Kafka, an Apache‑developed distributed publish/subscribe messaging system, provides reliable, high‑throughput real‑time data streaming with producers, consumers, brokers, streams, and connectors, and the article explains its core concepts, architecture, advantages, deployment methods, use cases, and includes Java code examples for producers and consumers.

Big DataJavaKafka
0 likes · 8 min read
What Is Kafka? Overview, Architecture, Features, Deployment, and Sample Code
Su San Talks Tech
Su San Talks Tech
Jan 13, 2024 · Backend Development

Mastering Delayed Task Scheduling in Java: From Quartz to Redis and RabbitMQ

This article explains the concept of delayed tasks, compares them with scheduled tasks, and evaluates multiple implementation strategies—including database polling, JDK DelayQueue, Netty HashedWheelTimer, Redis ZSET, Redis keyspace notifications, and RabbitMQ delayed queues—highlighting their advantages and drawbacks for order‑processing scenarios.

Delayed TasksJavaQuartz
0 likes · 15 min read
Mastering Delayed Task Scheduling in Java: From Quartz to Redis and RabbitMQ
Selected Java Interview Questions
Selected Java Interview Questions
Jan 12, 2024 · Backend Development

Efficient Excel Processing with EasyExcel in Java

This article introduces EasyExcel, a Java library that simplifies high‑performance Excel read/write operations, explains its core concepts, provides practical code examples for reading, writing, and filling Excel files, and discusses performance‑optimizing techniques and important usage considerations.

BackendDataProcessingExcel
0 likes · 16 min read
Efficient Excel Processing with EasyExcel in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 12, 2024 · Backend Development

Unlock Spring’s Hidden Power: Essential Utility Classes for Faster Backend Development

This article explores Spring 5.3.23’s core utility classes—including ID generators, concurrent LRU cache, concurrency throttling, StopWatch timing, digest calculation, method invocation, reflection helpers, route matching, collection utilities, and placeholder parsing—providing code examples, usage guidelines, and best practices to boost backend development efficiency.

CacheConcurrencyID Generator
0 likes · 12 min read
Unlock Spring’s Hidden Power: Essential Utility Classes for Faster Backend Development
Java Tech Enthusiast
Java Tech Enthusiast
Jan 11, 2024 · Backend Development

Resolving Maven Archetype Generation Issues

When Maven’s archetype plugin hangs during project generation, you can resolve it by specifying archetypeCatalog=internal or local as a command-line or VM option, placing a downloaded archetype-catalog.xml in ~/.m2, or configuring a domestic mirror in settings.xml, after which generation completes in seconds.

ArchetypeIDEJava
0 likes · 4 min read
Resolving Maven Archetype Generation Issues
Selected Java Interview Questions
Selected Java Interview Questions
Jan 11, 2024 · Backend Development

Design and Implementation of a Flexible Data Permission System in Java

This article presents a comprehensive design and implementation of a customizable data permission framework for Java backend applications, detailing the requirements, rule table structure, strategy pattern handling, custom annotations, AOP integration, and practical examples with full source code snippets.

AOPCustom AnnotationData Permission
0 likes · 22 min read
Design and Implementation of a Flexible Data Permission System in Java
Zhuanzhuan Tech
Zhuanzhuan Tech
Jan 10, 2024 · Information Security

Log Desensitization Practices and APT‑Based Automatic toString Generation in Java

This article describes how ZhaiZhai implements log desensitization for personal data protection using a reusable Java utility class, JSON serializer customizations with Jackson, and an annotation‑processing tool that automatically generates masked toString methods, while also discussing operational challenges and future plans.

APTAnnotation ProcessingJava
0 likes · 13 min read
Log Desensitization Practices and APT‑Based Automatic toString Generation in Java
IT Services Circle
IT Services Circle
Jan 10, 2024 · Backend Development

Why Using forEach to Remove Elements from an ArrayList Throws ConcurrentModificationException and How to Delete Safely

The article explains why iterating an ArrayList with forEach and removing elements causes a ConcurrentModificationException, analyzes the underlying fail‑fast iterator behavior, and presents three correct ways—using Iterator.remove, removeIf, and collecting then removing—to delete elements safely.

ArrayListConcurrentModificationExceptionIterator
0 likes · 4 min read
Why Using forEach to Remove Elements from an ArrayList Throws ConcurrentModificationException and How to Delete Safely
macrozheng
macrozheng
Jan 10, 2024 · Backend Development

What Is Compileflow and How Can It Supercharge Your Java Workflow Engine?

Compileflow is a lightweight, high‑performance Java workflow engine that converts BPMN files into compiled code, offering seamless integration, visual process design, and extensive plugin support, with quick‑start instructions, code examples, and a concise summary of its advantages and current limitations.

Javacompileflowprocess automation
0 likes · 7 min read
What Is Compileflow and How Can It Supercharge Your Java Workflow Engine?
Programmer DD
Programmer DD
Jan 10, 2024 · Backend Development

Can Java Records Replace Lombok? A Practical Comparison

This article compares Java's native record feature with the Lombok library, showing how records can reduce boilerplate code, outlining scenarios where records can replace Lombok, and discussing the limitations of each approach for clean and maintainable backend development.

BackendJavaJava 16
0 likes · 8 min read
Can Java Records Replace Lombok? A Practical Comparison
21CTO
21CTO
Jan 10, 2024 · Fundamentals

Why C# Overtook Java in 2023: Insights from the TIOBE Index

The 2023 TIOBE Index crowned C# as the top programming language, highlighting its rapid growth over Java, the impact of Java's new subscription pricing, and the broader shifts in language popularity that could shape development trends through 2024.

2023 trendsC#Java
0 likes · 9 min read
Why C# Overtook Java in 2023: Insights from the TIOBE Index
Java Backend Technology
Java Backend Technology
Jan 10, 2024 · Fundamentals

What Are the Most Popular Java Features Since Java 8? A Quick Guide

This article walks Java developers from Java 8 to Java 17 through the most widely‑adopted language enhancements—including var, switch expressions, text blocks, records, pattern‑matching, sealed classes, and helpful NullPointerExceptions—explaining each feature with concise descriptions and code snippets.

JDKJavaLanguage Enhancements
0 likes · 5 min read
What Are the Most Popular Java Features Since Java 8? A Quick Guide
FunTester
FunTester
Jan 9, 2024 · Databases

Boost Java Database Performance with PreparedStatement Batch Inserts

The article explains Java's PreparedStatement interface, highlighting its performance, security, and batch processing benefits, and provides a complete example of inserting multiple user records efficiently, while also discussing practical considerations such as batch size, transaction handling, error management, and optimization tips.

Batch processingDatabase PerformanceJDBC
0 likes · 6 min read
Boost Java Database Performance with PreparedStatement Batch Inserts
Java Architect Essentials
Java Architect Essentials
Jan 9, 2024 · Backend Development

PowerJob: A Comprehensive Introduction and Practical Guide to the New Generation Java Distributed Task Scheduling Framework

This article introduces PowerJob, explains its key features such as lock‑free scheduling, multiple execution modes, and workflow support, and provides step‑by‑step instructions for installing via Docker or JAR, configuring databases, setting up server and client projects, and creating and managing scheduled tasks in Java.

BackendJavaSpringBoot
0 likes · 11 min read
PowerJob: A Comprehensive Introduction and Practical Guide to the New Generation Java Distributed Task Scheduling Framework
Java High-Performance Architecture
Java High-Performance Architecture
Jan 9, 2024 · Backend Development

How to Build a Flexible API Rate‑Limiting System with Spring Interceptor and Redis

This article demonstrates step‑by‑step how to prevent API abuse in a Spring MVC application by using an Interceptor combined with Redis for counting requests, customizing limits per endpoint through annotations and reflection, handling mapping rules, path‑parameter challenges, and obtaining the real client IP.

InterceptorJavaRate Limiting
0 likes · 19 min read
How to Build a Flexible API Rate‑Limiting System with Spring Interceptor and Redis
Architect's Guide
Architect's Guide
Jan 9, 2024 · Backend Development

Implementing Delayed Task Scheduling in Java: Quartz, DelayQueue, Time Wheel, Redis, and RabbitMQ

This article compares delayed tasks with scheduled tasks and presents six practical Java solutions—database polling with Quartz, JDK DelayQueue, Netty's HashedWheelTimer, Redis ZSET, Redis key‑space notifications, and RabbitMQ delayed queues—detailing their implementations, advantages, and drawbacks for handling order‑timeout scenarios.

DelayQueueDelayed TasksJava
0 likes · 16 min read
Implementing Delayed Task Scheduling in Java: Quartz, DelayQueue, Time Wheel, Redis, and RabbitMQ
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 9, 2024 · Mobile Development

Understanding Android LayoutInflater: Usage, inflate Methods, Factory and Factory2

This article explains how Android's LayoutInflater converts XML layout files into View objects, demonstrates the various ways to obtain and use a LayoutInflater, details the overloads of the inflate method, and shows how to customize view creation with Factory and Factory2 interfaces, including practical code examples.

AndroidFactory2Java
0 likes · 20 min read
Understanding Android LayoutInflater: Usage, inflate Methods, Factory and Factory2
Java Architect Essentials
Java Architect Essentials
Jan 8, 2024 · Backend Development

Using MapStruct for Efficient Java Bean Copying and Mapping

This article explains why manual property copying in Java is inefficient, compares several runtime bean‑copy utilities, and demonstrates how MapStruct provides a compile‑time, type‑safe, high‑performance solution for shallow and deep object mapping, including handling of collections and ignored fields.

JavaMavenObject Copy
0 likes · 13 min read
Using MapStruct for Efficient Java Bean Copying and Mapping
21CTO
21CTO
Jan 8, 2024 · Fundamentals

Can Java Beat the Rest? Inside the One‑Billion‑Row Benchmark Showdown

The article examines the One‑Billion‑Row benchmark challenge, showcasing a GraalVM‑powered Java solution and comparing its performance against dozens of languages—from C and Rust to Python and JavaScript—highlighting stark speed differences and the impact of AOT and JIT compilation techniques.

Javagraalvmlanguage comparison
0 likes · 5 min read
Can Java Beat the Rest? Inside the One‑Billion‑Row Benchmark Showdown
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jan 8, 2024 · Information Security

Understanding SQL Injection and Prevention with Spring Boot and MyBatis

This article explains the concept of SQL injection, demonstrates a vulnerable query example, and provides a step‑by‑step Spring Boot and MyBatis implementation—including table creation, Java controller, service, DAO, mapper, and configuration—to illustrate how proper parameter handling prevents injection attacks.

JavaMyBatisSQL injection
0 likes · 10 min read
Understanding SQL Injection and Prevention with Spring Boot and MyBatis
Java Tech Enthusiast
Java Tech Enthusiast
Jan 8, 2024 · Backend Development

Migrating from RestTemplate to Spring WebClient: Benefits and Code Samples

Spring developers should replace the deprecated RestTemplate with the reactive WebClient, which offers non‑blocking I/O, a fluent functional API, streaming support, richer error handling and configurable timeouts, while still allowing synchronous calls via block(), as demonstrated by practical Spring Boot 3 code examples.

HTTPJavareactive
0 likes · 11 min read
Migrating from RestTemplate to Spring WebClient: Benefits and Code Samples
Programmer DD
Programmer DD
Jan 8, 2024 · Artificial Intelligence

How to Add Generative AI to Your Spring Boot App with Spring AI

This tutorial walks you through creating a Spring Boot project, configuring OpenAI credentials, building a controller, and using Spring AI's Prompt and PromptTemplate classes to integrate generative AI capabilities into your backend application.

Backend DevelopmentGenerative AIJava
0 likes · 5 min read
How to Add Generative AI to Your Spring Boot App with Spring AI
Su San Talks Tech
Su San Talks Tech
Jan 8, 2024 · Backend Development

How Xxl-Job Works: Inside the Lightweight Distributed Scheduler

This article explains the core concepts, architecture, and implementation details of Xxl-Job, a lightweight distributed task scheduling platform, covering the scheduler center, executor, job handling, demo setup, routing strategies, trigger mechanisms, and result callbacks.

BackendJavaSpring Boot
0 likes · 20 min read
How Xxl-Job Works: Inside the Lightweight Distributed Scheduler
dbaplus Community
dbaplus Community
Jan 7, 2024 · Backend Development

Mastering Snowflake IDs: Java Implementation, Pitfalls & Solutions

This article explains the Snowflake ID algorithm, its 64‑bit structure, provides a complete Java implementation, discusses common issues such as clock rollback and node ID management, and compares Snowflake IDs with UUIDs while suggesting Baidu's UidGenerator as a robust improvement.

JavaUnique IDdistributed-systems
0 likes · 9 min read
Mastering Snowflake IDs: Java Implementation, Pitfalls & Solutions
MaGe Linux Operations
MaGe Linux Operations
Jan 7, 2024 · Backend Development

How Zookeeper Guarantees Reliable Session Management with Heartbeats

This article explains Zookeeper's session management mechanism, detailing why TCP alone is insufficient for client liveness detection, how Zookeeper implements its own heartbeat protocol, and the internal data structures and algorithms—including expiryMap and SessionTracker—that efficiently track and expire sessions.

ConcurrencyDistributed SystemsHeartbeat
0 likes · 12 min read
How Zookeeper Guarantees Reliable Session Management with Heartbeats
Architect's Guide
Architect's Guide
Jan 7, 2024 · Information Security

Implementing RSA Encryption and Decryption in Spring Boot APIs

This guide explains how to secure Spring Boot API responses using RSA asymmetric encryption, covering the theory of RSA, practical scenarios, Maven setup, annotation‑based encryption/decryption, configuration files, and a JavaScript front‑end example for encrypting request payloads.

API SecurityJavaRSA
0 likes · 10 min read
Implementing RSA Encryption and Decryption in Spring Boot APIs
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jan 6, 2024 · Backend Development

Understanding and Using @MapKey Annotation in MyBatis

This article explains how to use MyBatis's @MapKey annotation to map query results into a Java Map, compares common data‑retrieval approaches, provides a concrete example with mapper code, and delves into the internal parsing and result‑handling mechanisms that enable key‑value mapping.

@MapKeyBackend DevelopmentJava
0 likes · 8 min read
Understanding and Using @MapKey Annotation in MyBatis
Zhuanzhuan Tech
Zhuanzhuan Tech
Jan 4, 2024 · Backend Development

Three‑Step Strategy for Identifying and Removing Zombie Services, Methods, and Component Dependencies

This article presents a detailed three‑step plan used by Zhezhuan to detect and eliminate zombie services, unused code methods, and obsolete component dependencies through monitoring, static analysis with Spoon, and Java‑agent based runtime tracing, achieving significant resource savings and improved code health.

Javabackend optimizationmonitoring
0 likes · 13 min read
Three‑Step Strategy for Identifying and Removing Zombie Services, Methods, and Component Dependencies
Selected Java Interview Questions
Selected Java Interview Questions
Jan 4, 2024 · Backend Development

Preventing Duplicate Form Submissions with a Redis‑Based Request Lock in Spring Boot

This article explains why duplicate form submissions occur, the risks they pose, and demonstrates a Spring Boot solution that uses a custom @RequestLock annotation together with Redis SETNX to generate a unique key and block rapid repeated requests, complete with project setup, code examples, and usage instructions.

AOPJavaRedis
0 likes · 12 min read
Preventing Duplicate Form Submissions with a Redis‑Based Request Lock in Spring Boot
macrozheng
macrozheng
Jan 4, 2024 · Backend Development

How DDD and Spring Data JPA Simplify Order Management in Java

This article explains how Domain‑Driven Design (DDD) combined with Spring Data JPA enables clean, object‑oriented modeling of order workflows, introduces the Repository pattern for persistence, and demonstrates the full lifecycle—from creation to address modification and payment—through concise Java code and SQL examples.

DDDDomain-Driven DesignJava
0 likes · 21 min read
How DDD and Spring Data JPA Simplify Order Management in Java
Code Ape Tech Column
Code Ape Tech Column
Jan 4, 2024 · Backend Development

Creating an Enterprise-Grade OSS Object Storage Spring Boot Starter

This article provides a step‑by‑step guide to building a Spring Boot starter that abstracts Amazon S3‑compatible object storage services such as Alibaba Cloud OSS, Tencent COS, Qiniu OSS, and MinIO, covering dependency setup, configuration properties, template interfaces, implementation, auto‑configuration, packaging, and testing.

Amazon S3BackendJava
0 likes · 15 min read
Creating an Enterprise-Grade OSS Object Storage Spring Boot Starter
vivo Internet Technology
vivo Internet Technology
Jan 3, 2024 · Backend Development

Understanding Spring Transaction Propagation Mechanisms

Spring’s transaction propagation defines seven behaviors—REQUIRED, SUPPORTS, MANDATORY, REQUIRES_NEW, NOT_SUPPORTED, NEVER, and NESTED—detailing how methods join, create, suspend, or nest transactions, and the article explains each type, practical scenarios, and how proper selection ensures atomicity, consistency, and correct rollback handling.

Javapropagationspring
0 likes · 9 min read
Understanding Spring Transaction Propagation Mechanisms
macrozheng
macrozheng
Jan 3, 2024 · Backend Development

Unlock Java Productivity: Master Hutool’s Powerful Utility Library

This article introduces the Hutool Java utility library, outlines its modules, shows how to add it to a Maven project, and provides practical code examples for HTTP requests, random codes, pinyin conversion, timing, number handling, data masking, email sending, and Bloom filters, demonstrating how Hutool can streamline backend development.

Code ExamplesHutoolJava
0 likes · 14 min read
Unlock Java Productivity: Master Hutool’s Powerful Utility Library
FunTester
FunTester
Jan 3, 2024 · Backend Development

Design and Implementation of a Java Virtual Thread Asynchronous Task Framework

This article introduces a Java virtual‑thread based asynchronous task framework, detailing its design constraints, a thread‑safe task queue, daemon thread management, and overloaded execute methods for Runnable and Groovy Closure, along with code examples and performance testing considerations.

ConcurrencyDaemon ThreadJava
0 likes · 9 min read
Design and Implementation of a Java Virtual Thread Asynchronous Task Framework
IT Xianyu
IT Xianyu
Jan 2, 2024 · Backend Development

Ensuring Transaction Consistency in Multithreaded Spring Applications Using Programmatic Transactions

This article explains how to execute two dependent tasks in parallel, guarantee their successful completion before a final step, and maintain transaction consistency across multiple threads in Spring by using CompletableFuture, programmatic transaction management, and a custom transaction‑resource copying mechanism.

CompletableFutureJavaProgrammaticTransaction
0 likes · 18 min read
Ensuring Transaction Consistency in Multithreaded Spring Applications Using Programmatic Transactions
Architect
Architect
Jan 2, 2024 · Fundamentals

Should try‑catch Live Inside or Outside a Loop? A Detailed Java Analysis

This article compares placing a try‑catch block inside versus outside a Java for‑loop, showing concrete code examples, execution results, memory‑usage measurements, and practical recommendations based on how exceptions affect loop termination and performance.

Best PracticesException HandlingJava
0 likes · 7 min read
Should try‑catch Live Inside or Outside a Loop? A Detailed Java Analysis
JD Retail Technology
JD Retail Technology
Jan 2, 2024 · Backend Development

Optimizing Spring Application Startup Time and Performance: Analysis, Tools, and Practical Steps

This article examines the causes of slow startup in large Spring applications, presents visual analysis techniques and a toolbox—including Arthas, JVM Sandbox, Async Profiler, and Spring Startup Analyzer—and provides concrete installation, configuration, and optimization procedures that can reduce startup time by 70‑80% while improving development efficiency and resource utilization.

BackendJar SlimmingJava
0 likes · 14 min read
Optimizing Spring Application Startup Time and Performance: Analysis, Tools, and Practical Steps
Programmer DD
Programmer DD
Jan 2, 2024 · Backend Development

How to Seamlessly Upgrade Spring Boot 2.x to 3.x – Step-by-Step Guide

This guide walks developers through upgrading from Spring Boot 2.x to 3.x, covering JDK 17 migration, pom.xml changes, configuration property updates, Jakarta EE transition, security reconfiguration, Kafka template adjustments, and OpenAPI integration, with code examples for each step.

JavaKafkaSpring Boot
0 likes · 9 min read
How to Seamlessly Upgrade Spring Boot 2.x to 3.x – Step-by-Step Guide
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jan 2, 2024 · Information Security

Master Spring Security: Custom Configurations, Filters, and Advanced Features

An in‑depth Spring Security guide covering custom configurations, authentication providers, user‑details services, path‑based authorization, role hierarchies, exception handling, custom filters, multiple filter chains, method security, internationalization, and session management, complete with practical code examples for Spring Boot 2.7.

AuthenticationAuthorizationJava
0 likes · 10 min read
Master Spring Security: Custom Configurations, Filters, and Advanced Features
Java Architect Essentials
Java Architect Essentials
Jan 1, 2024 · Backend Development

Outdated Java Technologies You Can Skip Learning: JSP, Struts, Hibernate, Servlet, and More

The article outlines which Java technologies—such as JSP, Struts, Hibernate, Servlet, Applet, Swing, JDBC, and XML—are now largely obsolete or unnecessary to learn for modern backend development, offering criteria for judging relevance and recommending focus on current frameworks like Spring MVC and MyBatis.

BackendJavaMyBatis
0 likes · 7 min read
Outdated Java Technologies You Can Skip Learning: JSP, Struts, Hibernate, Servlet, and More
Architect
Architect
Jan 1, 2024 · Backend Development

Optimizing Apache HttpClient for High-Concurrency Scenarios

This article details a step‑by‑step optimization of Apache HttpClient—including connection pooling, keep‑alive, singleton client usage, timeout tuning, and response handling—to reduce average request latency from 250 ms to about 80 ms in a high‑throughput Java service.

BackendConnectionPoolingHttpClient
0 likes · 12 min read
Optimizing Apache HttpClient for High-Concurrency Scenarios
Selected Java Interview Questions
Selected Java Interview Questions
Jan 1, 2024 · Backend Development

Comprehensive Guide to Java BigDecimal: Overview, Constructors, Common Methods, Formatting, and Exceptions

This article provides an in‑depth overview of Java's BigDecimal class, covering its purpose for high‑precision arithmetic, frequently used constructors, essential methods for arithmetic and conversion, techniques for formatting numbers, handling of common exceptions, and includes practical code examples and a utility class for precise calculations.

ArithmeticBigDecimalExceptions
0 likes · 16 min read
Comprehensive Guide to Java BigDecimal: Overview, Constructors, Common Methods, Formatting, and Exceptions
IT Services Circle
IT Services Circle
Jan 1, 2024 · Backend Development

ByteDance Java Backend Internship Interview Questions and Answers

This article compiles a comprehensive set of ByteDance daily internship interview questions covering Java backend fundamentals, networking protocols, operating system concepts, Linux process management, Redis data structures and persistence, MySQL indexing and query optimization, as well as essential algorithms, providing detailed explanations and code examples for each topic.

BackendInterviewJava
0 likes · 37 min read
ByteDance Java Backend Internship Interview Questions and Answers
Code Ape Tech Column
Code Ape Tech Column
Dec 31, 2023 · Backend Development

How to Set JVM Parameters for a Platform Handling 1 Million Daily Logins on an 8 GB Server

This article explains how to estimate capacity, choose appropriate garbage collectors, and configure JVM memory settings—including heap size, young generation, thread stack, and GC options—for a service that processes one million login requests per day on a node with 8 GB of RAM, providing step‑by‑step guidance and example command lines.

BackendGC tuningJVM
0 likes · 25 min read
How to Set JVM Parameters for a Platform Handling 1 Million Daily Logins on an 8 GB Server
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Dec 31, 2023 · Operations

Master JDK Command-Line Tools for JVM Performance Tuning: A Practical Guide

This guide explores the JDK command‑line utilities located in %JAVA_HOME%\bin, explaining how tools such as jps, jstat, jinfo, jmap, jhat and jstack can be used to monitor JVM processes, analyze performance bottlenecks, inspect memory usage, generate heap dumps, and adjust runtime parameters for more efficient and stable Java applications.

JDKJVMJava
0 likes · 8 min read
Master JDK Command-Line Tools for JVM Performance Tuning: A Practical Guide