Tagged articles
5000 articles
Page 20 of 50
Java Captain
Java Captain
May 8, 2025 · Backend Development

Guide to Using easy-data-scope for Dynamic SQL Data Permissions in Spring Boot

This tutorial explains how to set up and use the easy-data-scope library in a Spring Boot project to implement dynamic SQL data‑permission rules with MyBatis, covering database preparation, Maven dependencies, core annotations, configuration files, and example queries for various permission scenarios.

Data PermissionJavaMyBatis
0 likes · 10 min read
Guide to Using easy-data-scope for Dynamic SQL Data Permissions in Spring Boot
IT Xianyu
IT Xianyu
May 8, 2025 · Databases

Redis for DBAs: Quick Installation, Core Commands, Caching Design Patterns, and High‑Concurrency Practices

This article explains why Redis is becoming a DBA's favorite, provides a five‑minute installation guide, essential commands, cache‑design pitfalls and solutions, explores Redis data structures with Java examples, demonstrates distributed locking and flash‑sale implementations, and covers clustering, backup, monitoring, and performance tuning.

ClusterJavaRedis
0 likes · 9 min read
Redis for DBAs: Quick Installation, Core Commands, Caching Design Patterns, and High‑Concurrency Practices
Lin is Dream
Lin is Dream
May 8, 2025 · Backend Development

Boost Large-Scale Excel Exports in Java with a Multi-Threaded EasyExcel Template

This article introduces a reusable Java template that leverages EasyExcel v3.3.2 to efficiently export massive backend datasets—such as orders or financial records—to Excel, supporting both multi‑threaded and synchronous modes, pagination, sheet splitting, and customizable query logic, thereby reducing repetitive code and improving performance.

Javaeasyexcelexcel-export
0 likes · 11 min read
Boost Large-Scale Excel Exports in Java with a Multi-Threaded EasyExcel Template
Java Tech Enthusiast
Java Tech Enthusiast
May 8, 2025 · Backend Development

Comprehensive Overview of Spring Ecosystem Upgrades: Spring 6 Core Features, Spring Boot 3.0 Breakthroughs, and Migration Roadmap

The article surveys the Spring 6 and Spring Boot 3.0 upgrades—JDK 17 baseline, virtual threads, @HttpExchange client, RFC 7807 ProblemDetail handling, GraalVM native images, Jakarta EE 9+ migration, enhanced auto‑configuration, OAuth2 authorization server, Prometheus‑compatible metrics—and provides a step‑by‑step migration roadmap with practical recommendations for modernizing e‑commerce applications.

JavaMicroservicescloud-native
0 likes · 7 min read
Comprehensive Overview of Spring Ecosystem Upgrades: Spring 6 Core Features, Spring Boot 3.0 Breakthroughs, and Migration Roadmap
Ma Wei Says
Ma Wei Says
May 8, 2025 · Backend Development

Mastering Java ThreadPoolExecutor: Prevent OOM and Boost Concurrency

This article explains the fundamentals of Java threads and thread pools, details the configurable parameters of ThreadPoolExecutor, highlights the pitfalls of the Executors factory methods, and provides concrete recommendations and code examples for safely tuning thread pools across different workload types.

ConcurrencyJavaThreadPool
0 likes · 14 min read
Mastering Java ThreadPoolExecutor: Prevent OOM and Boost Concurrency
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 8, 2025 · Backend Development

Master Spring Boot 3 Controllers: Real‑World Cases & Advanced Techniques

Explore a comprehensive Spring Boot 3 tutorial featuring 122 real‑world controller examples—from basic @RestController setup and dynamic URL configuration to advanced SpEL usage, interface default methods, exception handling, data binding, and custom endpoints—complete with code snippets and test results.

Backend DevelopmentControllerJava
0 likes · 8 min read
Master Spring Boot 3 Controllers: Real‑World Cases & Advanced Techniques
Sohu Tech Products
Sohu Tech Products
May 7, 2025 · Backend Development

Master Java Concurrency: Fork/Join, CountDownLatch, CyclicBarrier, Semaphore & Exchanger Deep Dive

This article provides a comprehensive guide to Java's core concurrency utilities—including Fork/Join, CountDownLatch, CyclicBarrier, Semaphore, and Exchanger—explaining their principles, internal AQS implementation, practical usage patterns, performance optimizations, and complete code examples for real‑world scenarios.

ConcurrencyCountDownLatchCyclicBarrier
0 likes · 25 min read
Master Java Concurrency: Fork/Join, CountDownLatch, CyclicBarrier, Semaphore & Exchanger Deep Dive
Architecture Digest
Architecture Digest
May 7, 2025 · Backend Development

Analyzing Why Spring Boot Startup Is Slow: Detailed Breakdown and Profiling

This article investigates the reasons behind Spring Boot's slow startup by tracing the execution timeline, examining the prepareEnvironment and refreshContext phases, profiling bean creation, configuration loading, and external client initialization, and provides sample Java code for measuring and visualizing each step.

JavaOptimizationProfiling
0 likes · 13 min read
Analyzing Why Spring Boot Startup Is Slow: Detailed Breakdown and Profiling
DeWu Technology
DeWu Technology
May 7, 2025 · Backend Development

Building and Using a Model Context Protocol (MCP) Server with Spring AI

The article explains Anthropic’s Model Context Protocol, outlines its architecture, and provides a step‑by‑step guide to creating a Spring AI‑based MCP server in Java—including adding the starter, defining @Tool‑annotated services, packaging the jar, configuring the Cline plugin, and demonstrating advanced tools such as Elasticsearch queries.

AI IntegrationJavaMCP
0 likes · 10 min read
Building and Using a Model Context Protocol (MCP) Server with Spring AI
IT Services Circle
IT Services Circle
May 7, 2025 · Backend Development

Understanding RocketMQ Long‑Polling Mechanism and Its Implementation

This article explains how RocketMQ implements long‑polling for message consumption, detailing the pull‑based model, the broker and consumer timeout settings, the internal suspension of pull requests, and the processing loop that resumes suspended requests to improve efficiency.

BackendBrokerConsumer
0 likes · 7 min read
Understanding RocketMQ Long‑Polling Mechanism and Its Implementation
Java Tech Enthusiast
Java Tech Enthusiast
May 7, 2025 · Backend Development

Why Redis Increment Returns Null When Using @Transactional with Transaction Support in Spring Boot

The production failure where a customer‑service event creation stopped each morning was traced to RedisTemplate’s increment returning null because @Transactional combined with enabled Redis transaction support caused the command to be queued in a MULTI/EXEC block, which is fixed by using separate non‑transactional and transactional StringRedisTemplate beans.

DebuggingJavaRedis
0 likes · 11 min read
Why Redis Increment Returns Null When Using @Transactional with Transaction Support in Spring Boot
Code Ape Tech Column
Code Ape Tech Column
May 7, 2025 · Backend Development

Detailed Overview of Spring 6.0 Core Features and Spring Boot 3.0 Enhancements

This article provides a comprehensive guide to Spring 6.0’s new baseline JDK 17 requirement, virtual threads, declarative HTTP clients, RFC‑7807 ProblemDetail handling, GraalVM native image support, and Spring Boot 3.0 improvements such as Jakarta EE migration, OAuth2 authorization server, Prometheus monitoring, and practical migration steps for enterprise applications.

BackendJavaPrometheus
0 likes · 8 min read
Detailed Overview of Spring 6.0 Core Features and Spring Boot 3.0 Enhancements
Architect's Must-Have
Architect's Must-Have
May 7, 2025 · Backend Development

How ReentrantLock Works: Inside Java’s AbstractQueuedSynchronizer

This article dissects Java’s ReentrantLock implementation, detailing its delegation to AbstractQueuedSynchronizer, the lock acquisition process, the role of non‑fair and fair sync subclasses, the internal CLH queue mechanics, and how unlocking is handled, while comparing Lock with synchronized.

AbstractQueuedSynchronizerConcurrencyJava
0 likes · 14 min read
How ReentrantLock Works: Inside Java’s AbstractQueuedSynchronizer
Xuanwu Backend Tech Stack
Xuanwu Backend Tech Stack
May 7, 2025 · Backend Development

How to Prevent Duplicate Message Consumption in RabbitMQ

RabbitMQ often suffers from duplicate message consumption due to network glitches, node failures, or ACK issues, but you can eliminate repeats by implementing idempotent processing, using caches or deduplication tables, and leveraging manual acknowledgments or the Message Deduplication plugin, as illustrated with Java examples.

JavaManual AcknowledgmentMessage Deduplication
0 likes · 6 min read
How to Prevent Duplicate Message Consumption in RabbitMQ
Java Architect Essentials
Java Architect Essentials
May 6, 2025 · Backend Development

How @Authenticated Simplifies SpringBoot API Security

The article explains how the @Authenticated annotation in SpringBoot can replace repetitive manual authentication code, offering automatic request validation, role‑based checks, and streamlined error handling, with practical examples and a clear list of benefits for developers.

API SecurityAuthenticationBackend
0 likes · 7 min read
How @Authenticated Simplifies SpringBoot API Security
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 6, 2025 · Backend Development

Understanding Java CyclicBarrier with Practical Examples

This article explains Java's CyclicBarrier synchronization tool, compares it with CountDownLatch, demonstrates basic and array‑sum examples with reusable barriers and callback actions, and shows how it can coordinate multiple threads for tasks such as parallel computation and result aggregation.

ConcurrencyCyclicBarrierJava
0 likes · 6 min read
Understanding Java CyclicBarrier with Practical Examples
JD Tech Talk
JD Tech Talk
May 6, 2025 · Backend Development

Building a Java Method Call‑Stack Tracing Tool to Accelerate Issue Diagnosis

This article describes the pain points of daily on‑call debugging, explains how Java StackTraceElement can be leveraged to construct a chain‑style call‑stack visualizer, details the implementation of a lightweight tracing utility with configurable filters, and demonstrates its integration and practical usage in production environments.

DebuggingJavaStackTrace
0 likes · 14 min read
Building a Java Method Call‑Stack Tracing Tool to Accelerate Issue Diagnosis
JD Cloud Developers
JD Cloud Developers
May 6, 2025 · Backend Development

How to Instantly Trace Java Method Call Stacks for Faster Debugging

This article explains how to build and use a Java StackTrace utility that extracts and filters method call chains, enabling developers to quickly locate error sources, streamline debugging, and improve operational efficiency by visualizing execution paths through customizable parameters and integration examples.

Backend DevelopmentDebuggingJava
0 likes · 17 min read
How to Instantly Trace Java Method Call Stacks for Faster Debugging
Cognitive Technology Team
Cognitive Technology Team
May 6, 2025 · Backend Development

Understanding Java's AbstractQueuedSynchronizer (AQS): Core Components, Design, and Practical Applications

AbstractQueuedSynchronizer (AQS) is the core framework for building Java locks and synchronizers, providing state management, FIFO queuing, and blocking/unblocking mechanisms; this article explains its components, design patterns, thread safety operations, and real-world implementations such as ReentrantLock and Semaphore, with code examples.

AQSConcurrencyJava
0 likes · 11 min read
Understanding Java's AbstractQueuedSynchronizer (AQS): Core Components, Design, and Practical Applications
Lin is Dream
Lin is Dream
May 5, 2025 · Backend Development

Mastering MDC with Logback: Traceable Logging for Distributed Systems

This article explains how to use SLF4J's MDC with Logback to assign a unique trace ID to each request, propagate it across threads and services, and configure log patterns so that logs become fully traceable for easier debugging in distributed systems.

Distributed SystemsJavaLogging
0 likes · 7 min read
Mastering MDC with Logback: Traceable Logging for Distributed Systems
Full-Stack Internet Architecture
Full-Stack Internet Architecture
May 5, 2025 · Backend Development

Using CountDownLatch in Java to Synchronize Multiple Threads for a Lucky Card Collection Example

This article explains the Java CountDownLatch utility, demonstrates its countdown synchronization mechanism with a lucky‑card‑collection scenario, provides a complete runnable example, and shows how the main thread waits for all worker threads to finish before proceeding to the lottery step.

ConcurrencyCountDownLatchJava
0 likes · 5 min read
Using CountDownLatch in Java to Synchronize Multiple Threads for a Lucky Card Collection Example
Java Tech Enthusiast
Java Tech Enthusiast
May 5, 2025 · Backend Development

Advanced MyBatis-Plus Features: Batch Insert, Logical Delete, Auto Field Fill, Type Handlers, Dynamic Table Names, Multi-Tenant

The article demonstrates advanced MyBatis‑Plus techniques—including high‑speed batch inserts with rewriteBatchedStatements, logical deletes via global config, automatic timestamp and user fields through MetaObjectHandler, JSON serialization with JacksonTypeHandler, dynamic table naming via an interceptor, and a brief multi‑tenant overview—to streamline development and reduce boilerplate code.

Batch InsertDynamic TableJava
0 likes · 16 min read
Advanced MyBatis-Plus Features: Batch Insert, Logical Delete, Auto Field Fill, Type Handlers, Dynamic Table Names, Multi-Tenant
Cognitive Technology Team
Cognitive Technology Team
May 5, 2025 · Fundamentals

Evolution of Java ConcurrentHashMap: From Segment Locks to CAS + synchronized (Java 7 vs Java 8)

This article examines the evolution of Java's ConcurrentHashMap, comparing the segment‑lock implementation in Java 7 with the CAS‑plus‑synchronized, bucket‑level locking and red‑black tree enhancements introduced in Java 8, covering lock mechanisms, data structures, resizing strategies, core operations, performance and suitable use cases.

ConcurrencyConcurrentHashMapDataStructure
0 likes · 11 min read
Evolution of Java ConcurrentHashMap: From Segment Locks to CAS + synchronized (Java 7 vs Java 8)
Java Architect Essentials
Java Architect Essentials
May 4, 2025 · Backend Development

Mastering Request Timeouts in SpringBoot with @Timeout Annotation

Learn how the @Timeout annotation in SpringBoot simplifies request timeout management by eliminating repetitive configuration code, offering automatic timeout control, customizable fallback methods, and improved maintainability, with practical examples and step-by-step guidance for integrating it into your APIs.

BackendBest PracticesJava
0 likes · 7 min read
Mastering Request Timeouts in SpringBoot with @Timeout Annotation
Java One
Java One
May 4, 2025 · Fundamentals

How Does Java Execution Differ from C? A 3‑Minute JVM Deep Dive

This article compares the compilation and runtime processes of C and Java programs, explains Java's class loading, linking, initialization, memory layout, execution engine components, and native interface, and highlights why Java startup is slower than native C execution.

JVMJavaRuntime
0 likes · 16 min read
How Does Java Execution Differ from C? A 3‑Minute JVM Deep Dive
Java Captain
Java Captain
May 4, 2025 · Backend Development

Understanding Java Counter Implementations: AtomicLong vs LongAdder

This article explains the principles, advantages, and drawbacks of Java's AtomicLong and LongAdder counters, describes the CAS operation and its ABA problem, and analyzes why Alibaba recommends LongAdder for high‑concurrency, high‑availability scenarios in distributed systems.

CASConcurrencyJava
0 likes · 7 min read
Understanding Java Counter Implementations: AtomicLong vs LongAdder
Su San Talks Tech
Su San Talks Tech
May 4, 2025 · Backend Development

How to Export Millions of Excel Rows in Seconds: High‑Performance Java Strategies

Learn how to overcome memory and speed bottlenecks when exporting massive datasets to Excel by using streaming APIs like SXSSFWorkbook and EasyExcel, optimizing database pagination, tuning JVM and connection pools, and applying asynchronous shard processing to achieve stable sub‑200 MB memory usage for millions of rows.

Database paginationJVM tuningJava
0 likes · 10 min read
How to Export Millions of Excel Rows in Seconds: High‑Performance Java Strategies
Cognitive Technology Team
Cognitive Technology Team
May 4, 2025 · Backend Development

Understanding Java ThreadLocal Memory Leaks: Mechanisms, Risks, Diagnosis, and Defensive Practices

This article explains the inner workings of Java's ThreadLocal, analyzes how weak and strong references can cause memory leaks in thread pools, demonstrates typical leak scenarios with code examples, and provides diagnostic tools and defensive coding practices to prevent such leaks.

Best PracticesConcurrencyGarbage Collection
0 likes · 9 min read
Understanding Java ThreadLocal Memory Leaks: Mechanisms, Risks, Diagnosis, and Defensive Practices
Java Architect Essentials
Java Architect Essentials
May 3, 2025 · Backend Development

Simplifying CORS Handling in Spring Boot with the @CrossOrigin Annotation

Spring Boot developers can eliminate complex CORS configurations by applying the @CrossOrigin annotation directly on controllers or methods, which simplifies cross‑origin request handling, supports custom origins, methods, and headers, and can be globally configured for consistent, secure API access across environments.

CORSJavaSpringBoot
0 likes · 8 min read
Simplifying CORS Handling in Spring Boot with the @CrossOrigin Annotation
Architect
Architect
May 3, 2025 · Backend Development

Why Rebuild a Job Scheduler? Inside a Lightweight Distributed Timing Framework

This article explains the motivation, design choices, and implementation details of a custom distributed job scheduling framework, covering its architecture, load‑balancing strategy, message‑queue handling, persistence mechanisms, and key code snippets, while comparing it to existing solutions like Quartz, XXL‑Job, and PowerJob.

Distributed SystemsJavaMessage queue
0 likes · 16 min read
Why Rebuild a Job Scheduler? Inside a Lightweight Distributed Timing Framework
Lin is Dream
Lin is Dream
May 3, 2025 · Backend Development

Master Java Bean Validation: Reduce Redundant Code with JSR‑380 Annotations

This tutorial shows how to use Javax Validator annotations to simplify backend service interfaces, covering basic, collection, date, enum, conditional, group, and custom validations with complete Maven dependencies and example code, plus handling of validation exceptions.

BackendBean ValidationJSR-380
0 likes · 16 min read
Master Java Bean Validation: Reduce Redundant Code with JSR‑380 Annotations
Top Architect
Top Architect
May 3, 2025 · Backend Development

Implementing an OA Workflow Approval System with Activiti

This article explains how to design and implement a multi‑level approval workflow for an office automation system using the Activiti BPMN engine, covering process diagram creation, Spring Boot configuration, Java code for deployment and task handling, database tables, API overview, and comparisons with similar frameworks.

ActivitiBPMNJava
0 likes · 25 min read
Implementing an OA Workflow Approval System with Activiti
Cognitive Technology Team
Cognitive Technology Team
May 3, 2025 · Fundamentals

Understanding Java ThreadLocalMap: Structure, Operations, and Memory Management

This article explains the internal design of Java's ThreadLocalMap, covering its core Entry structure, hash table storage, linear probing for collision resolution, key operations (set, get, remove), memory‑leak scenarios, automatic cleanup mechanisms, and practical usage patterns such as thread‑context propagation and Android Looper.

ConcurrencyJavaMemoryManagement
0 likes · 10 min read
Understanding Java ThreadLocalMap: Structure, Operations, and Memory Management
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 3, 2025 · Backend Development

Mastering Resilience4j: Real-World Spring Boot 3 Circuit Breaker Cases

This article explains why circuit breakers are essential for third‑party API calls, introduces the lightweight Resilience4j library, and provides step‑by‑step Spring Boot 3 examples—including Maven setup, RestTemplate and WebClient integrations, annotation usage, and both default and custom configurations—complete with code snippets and result screenshots.

Backend DevelopmentCircuit BreakerJava
0 likes · 8 min read
Mastering Resilience4j: Real-World Spring Boot 3 Circuit Breaker Cases
Cognitive Technology Team
Cognitive Technology Team
May 3, 2025 · Backend Development

Understanding ThreadLocal: Core Principles, Use Cases, Pitfalls, and Best Practices

ThreadLocal provides per‑thread variable storage to achieve thread isolation, improving concurrency performance, and is essential for safe data handling in Java, but improper use can cause memory leaks, data contamination, and other issues; this article explains its internal mechanism, common scenarios, pitfalls, and best‑practice guidelines with code examples.

Best PracticesConcurrencyJava
0 likes · 19 min read
Understanding ThreadLocal: Core Principles, Use Cases, Pitfalls, and Best Practices
Deepin Linux
Deepin Linux
May 3, 2025 · Backend Development

Analyzing and Resolving Uninterruptible Thread States During System Suspend

This article examines why a thread may remain in an uninterruptible wake‑up state during system suspend, explains deadlock fundamentals, outlines thread lifecycle states, and provides practical debugging steps and mitigation strategies using Java concurrency tools and system monitoring.

ConcurrencyJavaThread
0 likes · 23 min read
Analyzing and Resolving Uninterruptible Thread States During System Suspend
Java Architect Essentials
Java Architect Essentials
May 2, 2025 · Backend Development

Simplifying Request Parameter Binding in SpringBoot with @RequestParam

This article explains how the @RequestParam annotation in SpringBoot automatically binds request parameters—whether from forms, query strings, or URLs—to controller method arguments, reducing boilerplate code, improving readability, and enhancing development efficiency, with practical code examples and advanced usage tips.

JavaParameterBindingRequestParam
0 likes · 8 min read
Simplifying Request Parameter Binding in SpringBoot with @RequestParam
Java Captain
Java Captain
May 2, 2025 · Fundamentals

Understanding Java Concurrency: Challenges and Solutions from Hardware to JVM

This article uses real‑world analogies to dissect the three core challenges of Java concurrency—ordering, visibility, and atomicity—and explains how hardware instructions, JVM mechanisms, and Java SDK tools such as locks, CAS, and waiting/notification utilities provide efficient solutions.

CASConcurrencyJVM
0 likes · 14 min read
Understanding Java Concurrency: Challenges and Solutions from Hardware to JVM
Architect
Architect
May 2, 2025 · Backend Development

Understanding and Implementing LMAX Disruptor in Java

This article introduces the high‑performance LMAX Disruptor library, explains its core concepts such as Ring Buffer, Sequence, Sequencer, and Wait Strategy, and provides a step‑by‑step Java demo with complete code to build a producer‑consumer message queue.

Backend DevelopmentConcurrencyDisruptor
0 likes · 11 min read
Understanding and Implementing LMAX Disruptor in Java
Cognitive Technology Team
Cognitive Technology Team
May 2, 2025 · Backend Development

Stopping Java Threads: interrupt, volatile flag, and combined approaches

This article explains three methods for safely terminating Java threads—using the interrupt mechanism, a volatile boolean flag, and a combination of both—detailing their principles, code examples, advantages, disadvantages, and a comparative summary to guide developers in choosing the appropriate technique.

JavaThread Interruptionmultithreading
0 likes · 8 min read
Stopping Java Threads: interrupt, volatile flag, and combined approaches
Cognitive Technology Team
Cognitive Technology Team
May 1, 2025 · Backend Development

10 Tips and Tricks for Using ExecutorService in Java

This article presents ten practical tips for Java developers on naming thread‑pool threads, dynamically changing thread names, safely shutting down executors, handling interruptions, bounding queue sizes, proper exception handling, monitoring wait times, preserving client stack traces, preferring CompletableFuture, and using SynchronousQueue with ThreadPoolExecutor.

Best PracticesConcurrencyExecutorService
0 likes · 15 min read
10 Tips and Tricks for Using ExecutorService in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 1, 2025 · Backend Development

Master Spring Boot TargetSource: Custom, HotSwappable, Pooled & More

This article explains Spring Boot's TargetSource mechanism, covering the default SingletonTargetSource and demonstrating how to implement custom, hot‑swappable, pooled, prototype, and thread‑local TargetSources with full code examples and execution results, helping developers manage bean instances dynamically in AOP proxies.

AOPBackend DevelopmentJava
0 likes · 8 min read
Master Spring Boot TargetSource: Custom, HotSwappable, Pooled & More
Python Crawling & Data Mining
Python Crawling & Data Mining
May 1, 2025 · Information Security

Master Frida Hooking: Advanced Android Reverse‑Engineering Techniques

This comprehensive tutorial walks through using Frida to hook Android applications, covering official API references, loading APKs, hooking normal and static methods, modifying parameters and return values, handling constructors, inner and anonymous classes, enumerating loaded classes and methods, dynamic dex loading, selective hooking, and practical examples such as programmatically clicking a login button, all illustrated with clear code snippets and explanations.

AndroidFridaHooking
0 likes · 18 min read
Master Frida Hooking: Advanced Android Reverse‑Engineering Techniques
Architecture Digest
Architecture Digest
Apr 30, 2025 · Backend Development

Integrating Spring Boot with Model Context Protocol (MCP) for AI‑Powered Book Management

This article demonstrates how to transform a traditional Spring Boot book‑management service into an AI‑driven MCP service by importing Spring AI dependencies, configuring proxy and MCP server settings, annotating service methods with @Tool, registering them, and exposing a chat endpoint that lets large language models query and manipulate book data through natural language.

AIChatbotJava
0 likes · 13 min read
Integrating Spring Boot with Model Context Protocol (MCP) for AI‑Powered Book Management
Cognitive Technology Team
Cognitive Technology Team
Apr 30, 2025 · Backend Development

Getting Started with JLine 3: Building Interactive Java CLI Applications

This article introduces JLine 3, a Java library that adds GNU‑readline‑style features such as line editing, history, auto‑completion, and syntax highlighting to command‑line tools, and provides Maven setup, a complete code example, detailed explanation, and sample output for building robust interactive CLI applications.

CLIJLineJava
0 likes · 10 min read
Getting Started with JLine 3: Building Interactive Java CLI Applications
Java Captain
Java Captain
Apr 29, 2025 · Fundamentals

Java Stream API: Concepts, Operations, and Practical Examples

This article introduces the concept and benefits of Java Stream programming, explains its core features such as lazy evaluation, parallel processing, and functional style, and provides detailed examples of creating streams, common intermediate and terminal operations, and practical use cases for data manipulation.

Functional ProgrammingJavaStream API
0 likes · 34 min read
Java Stream API: Concepts, Operations, and Practical Examples
Java Captain
Java Captain
Apr 29, 2025 · Fundamentals

How to Directly Output Arrays, Traverse Strings, and Read Keyboard Input in Java

This article demonstrates how to print an int array using Arrays.toString, presents two methods for iterating over a string—via toCharArray and charAt—and explains proper usage of Scanner methods to read tokens, lines, and integers from the console, including handling of newline characters.

ArraysJavaProgramming Basics
0 likes · 3 min read
How to Directly Output Arrays, Traverse Strings, and Read Keyboard Input in Java
Sohu Tech Products
Sohu Tech Products
Apr 29, 2025 · Backend Development

Mastering Java Concurrency: Deep Dive into Threads, Locks, and AQS

This comprehensive guide explores Java multithreading fundamentals, covering thread creation, lifecycle, synchronization challenges, context switching costs, deadlock detection, various lock mechanisms such as synchronized, ReentrantLock, ReadWriteLock, and the underlying AbstractQueuedSynchronizer architecture with practical code examples and performance tips.

AQSConcurrencyCondition
0 likes · 42 min read
Mastering Java Concurrency: Deep Dive into Threads, Locks, and AQS
IT Services Circle
IT Services Circle
Apr 29, 2025 · Backend Development

Understanding JVM Garbage Collection Mechanisms for Interviews

This article humorously introduces a common interview scenario and then provides a comprehensive overview of JVM garbage collection, covering memory regions, GC roots, collector types like ParNew, G1, CMS, tuning parameters, code examples, and practical tips for diagnosing and optimizing GC behavior.

Garbage CollectionJVMJava
0 likes · 8 min read
Understanding JVM Garbage Collection Mechanisms for Interviews
Java Tech Enthusiast
Java Tech Enthusiast
Apr 29, 2025 · Backend Development

Implementing Data Isolation with MyBatis Interceptor and Custom Annotations

The article describes how to enforce environment‑based data isolation in a shared database by adding an env column, using a MyBatis interceptor to inject and filter this field at runtime, and employing a custom @InvokeChainSkipEnvRule annotation with AOP to selectively bypass the rule, keeping existing code untouched.

AOPCustom AnnotationData Isolation
0 likes · 9 min read
Implementing Data Isolation with MyBatis Interceptor and Custom Annotations
Code Ape Tech Column
Code Ape Tech Column
Apr 29, 2025 · Backend Development

Custom SQL Injector in MyBatis‑Plus: Built‑in Extensions, Global Configuration, and How to Create Your Own

This article explains the concept of SQL injectors in MyBatis‑Plus, lists the built‑in injectable methods, shows how to configure them globally, demonstrates creating a custom mapper and injector with full code examples, and provides step‑by‑step testing procedures for extending MyBatis‑Plus functionality.

Custom MapperJavaMyBatis-Plus
0 likes · 7 min read
Custom SQL Injector in MyBatis‑Plus: Built‑in Extensions, Global Configuration, and How to Create Your Own
Cognitive Technology Team
Cognitive Technology Team
Apr 29, 2025 · Backend Development

Common CompletableFuture Pitfalls and Best Practices in Java

This article examines the powerful Java CompletableFuture class, identifies frequent misuse pitfalls such as ignored exceptions, wrong thread‑pool choices, blocking callbacks, context loss, and overly fragmented chains, and provides concrete avoidance strategies and best‑practice recommendations for robust asynchronous programming.

AsynchronousBest PracticesCompletableFuture
0 likes · 9 min read
Common CompletableFuture Pitfalls and Best Practices in Java
JD Tech Talk
JD Tech Talk
Apr 29, 2025 · Backend Development

Understanding Java ShutdownHook: Principles, Implementation, and Use Cases

This article explains the concept of Java's Runtime.addShutdownHook, details its underlying implementation in the Runtime and ApplicationShutdownHooks classes, demonstrates usage with code examples, discusses typical application scenarios, potential risks of long‑running hooks, and provides best‑practice recommendations for safe JVM shutdown handling.

JVMJavaRuntime
0 likes · 7 min read
Understanding Java ShutdownHook: Principles, Implementation, and Use Cases
Lin is Dream
Lin is Dream
Apr 29, 2025 · Backend Development

How to Build a Scalable Chunked File Upload Service with Java and Redis

This article explains how to design and implement a reliable, resumable multipart file upload system in Java, using Redis for session tracking, FileChannel for zero‑copy merging, progress monitoring, checkpoint files for resume support, and NFS shared storage for Docker‑based distributed deployments.

JavaNFSRedis
0 likes · 18 min read
How to Build a Scalable Chunked File Upload Service with Java and Redis
Java Architect Essentials
Java Architect Essentials
Apr 28, 2025 · Backend Development

Simplifying SpringBoot Controllers with the @RestController Annotation

The article explains how using SpringBoot's @RestController annotation can replace the verbose combination of @Controller and @ResponseBody, reducing configuration overhead, aligning with convention‑over‑configuration principles, and streamlining backend development for faster, cleaner API implementations.

JavaRestControllerSpringBoot
0 likes · 7 min read
Simplifying SpringBoot Controllers with the @RestController Annotation
Architect
Architect
Apr 28, 2025 · Backend Development

Master Real-Time Log Streaming in Spring Boot with ResponseBodyEmitter

Learn how to implement efficient real-time log streaming in Spring Boot using ResponseBodyEmitter, covering its purpose, core methods, usage scenarios, step-by-step controller code, connection lifecycle management, comparison with SSE and Streaming, and important considerations for client support, timeouts, and thread safety.

HTTP Chunked TransferJavaReal-time Streaming
0 likes · 11 min read
Master Real-Time Log Streaming in Spring Boot with ResponseBodyEmitter
Top Architect
Top Architect
Apr 28, 2025 · Backend Development

Design and Implementation of a General‑Purpose Asynchronous Processing SDK for Spring Backend

This article introduces a non‑intrusive asynchronous processing SDK for Java Spring backends that leverages transaction events, provides fallback mechanisms, and includes configuration, components, usage examples, and code snippets to achieve reliable, eventually consistent async execution while preserving performance and data integrity.

Design PatternsJavaasynchronous processing
0 likes · 10 min read
Design and Implementation of a General‑Purpose Asynchronous Processing SDK for Spring Backend
Top Architect
Top Architect
Apr 28, 2025 · Backend Development

Replacing MyBatis with MyBatis-Plus: Debugging LocalDateTime Conversion Errors and MySQL Connector Upgrades

The article walks through migrating an old MySQL‑5.7 project from MyBatis 3.5.0 to MyBatis‑Plus 3.1.1, diagnosing a LocalDateTime conversion exception caused by an outdated mysql‑connector‑java driver, and resolves it by upgrading the driver version, highlighting the need for careful component compatibility checks.

Backend DevelopmentJavaLocalDateTime
0 likes · 10 min read
Replacing MyBatis with MyBatis-Plus: Debugging LocalDateTime Conversion Errors and MySQL Connector Upgrades
macrozheng
macrozheng
Apr 28, 2025 · Backend Development

Master Java Serialization: Common Pitfalls and Best Practices

This article explains the fundamentals of Java object serialization, compares legacy and modern formats, outlines how to choose the right method, and details common issues such as static fields, transient modifiers, serialVersionUID mismatches, inheritance quirks, and custom serialization techniques with clear code examples.

BackendDeserializationExternalizable
0 likes · 15 min read
Master Java Serialization: Common Pitfalls and Best Practices
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Apr 28, 2025 · Backend Development

Master Spring Boot 3 Initialization: 7 Practical Techniques Explained

This article introduces seven Spring Boot 3 initialization mechanisms—including @PostConstruct, InitializingBean, @Bean initMethod, ApplicationRunner, ContextRefreshedEvent, SmartInitializingSingleton, and SmartLifecycle—detailing their usage, code examples, execution order, and suitable scenarios for effective application startup.

InitializationJavaSpring Boot
0 likes · 8 min read
Master Spring Boot 3 Initialization: 7 Practical Techniques Explained
Java Architect Essentials
Java Architect Essentials
Apr 27, 2025 · Backend Development

Concept-Download: A Spring‑Based Library for Simplified File Download, Compression and Reactive Streaming

This article introduces a Spring‑compatible download library that lets developers annotate a single method to download arbitrary objects—files, HTTP resources, or custom objects—while handling caching, concurrent loading, compression, and reactive response writing for both MVC and WebFlux environments.

File DownloadJavaWebFlux
0 likes · 14 min read
Concept-Download: A Spring‑Based Library for Simplified File Download, Compression and Reactive Streaming
Java Captain
Java Captain
Apr 27, 2025 · Backend Development

Parallel Pagination Query Interceptor for MyBatis-Plus in Spring Boot

This article explains how to implement a custom MyBatis-Plus pagination interceptor that parallelizes COUNT and data queries using CompletableFuture and a configurable thread pool in Spring Boot, suitable for large single-table and complex multi-table pagination scenarios, and provides detailed configuration and code examples.

JavaMyBatis-PlusParallel Query
0 likes · 13 min read
Parallel Pagination Query Interceptor for MyBatis-Plus in Spring Boot
Architect
Architect
Apr 27, 2025 · Backend Development

How to Detect and Clean Unused Maven Dependencies with mvn dependency:analyze

This guide explains why managing Maven dependencies is essential, shows how to run mvn dependency:analyze in the terminal or IntelliJ IDEA, interprets the warnings for used undeclared and unused declared dependencies, and outlines best timing and precautions for safely cleaning up your project's pom.xml.

Backend DevelopmentIntelliJ IDEAJava
0 likes · 8 min read
How to Detect and Clean Unused Maven Dependencies with mvn dependency:analyze
Architecture Digest
Architecture Digest
Apr 27, 2025 · Backend Development

Using Java 21 Virtual Threads in Spring Boot: Basics, Performance Comparison, and Best Practices

This article introduces Java 21 virtual threads, explains their lightweight and high‑concurrency advantages, demonstrates basic and delayed creation, shows how to enable them in Spring Boot with minimal configuration, compares performance against traditional threads, and provides additional Java performance optimization tips.

ConcurrencyJavaSpring Boot
0 likes · 6 min read
Using Java 21 Virtual Threads in Spring Boot: Basics, Performance Comparison, and Best Practices
Code Ape Tech Column
Code Ape Tech Column
Apr 27, 2025 · Backend Development

Using easy-data-scope for Dynamic SQL Data Permissions in Spring Boot

This guide demonstrates how to integrate the easy-data-scope library into a Spring Boot project to implement dynamic, annotation‑driven SQL data permissions with MyBatis, covering project setup, dependency configuration, core interfaces, annotation options, and practical query examples.

BackendData PermissionJava
0 likes · 7 min read
Using easy-data-scope for Dynamic SQL Data Permissions in Spring Boot
Java Captain
Java Captain
Apr 27, 2025 · Backend Development

Comprehensive Overview of Spring MVC, Bean, Dependency Injection, Scope, and Spring Boot Annotations

This article provides a detailed guide to the most commonly used Spring and Spring Boot annotations—including MVC mapping annotations, bean registration annotations, dependency injection and scope annotations, as well as conditional configuration annotations—explaining their purposes, key attributes, and example usages for Java backend development.

JavaSpring Bootannotations
0 likes · 12 min read
Comprehensive Overview of Spring MVC, Bean, Dependency Injection, Scope, and Spring Boot Annotations
Wukong Talks Architecture
Wukong Talks Architecture
Apr 27, 2025 · Backend Development

Evolution of a Batch Processing System: From Centralized to Configurable and Localized Architectures

This article examines the evolution of a merchant batch processing system, detailing its transition from a centralized, tightly‑coupled architecture to a configurable, SPI‑based design and finally to a localized task‑reporting model, while discussing code reuse, scheduling strategies, isolation techniques, and performance challenges.

Backend DevelopmentBatch processingJava
0 likes · 18 min read
Evolution of a Batch Processing System: From Centralized to Configurable and Localized Architectures
Java Captain
Java Captain
Apr 27, 2025 · Backend Development

Understanding Java Executors Thread Pools: newCachedThreadPool, newScheduledThreadPool, newSingleThreadExecutor, newWorkStealingPool, and newFixedThreadPool

This article explains the five main thread‑pool types provided by Java's Executors class, detailing their constructors, underlying queue implementations, and default thread‑count behaviors, and notes why the default pools may not suit everyday development needs.

ConcurrencyExecutorServiceExecutors
0 likes · 4 min read
Understanding Java Executors Thread Pools: newCachedThreadPool, newScheduledThreadPool, newSingleThreadExecutor, newWorkStealingPool, and newFixedThreadPool
Pan Zhi's Tech Notes
Pan Zhi's Tech Notes
Apr 27, 2025 · Cloud Native

Why Alibaba’s Open‑Source Sentinel Beats Other Service Rate‑Limiting Tools

This article introduces Sentinel, Alibaba’s open‑source traffic‑governance component, compares it with Hystrix, demonstrates quick‑start code, shows SpringBoot integration, annotation usage, console setup, and OpenFeign adaptation, illustrating how to implement service rate limiting and circuit breaking in microservices.

Circuit BreakingJavaMicroservices
0 likes · 17 min read
Why Alibaba’s Open‑Source Sentinel Beats Other Service Rate‑Limiting Tools
Java Captain
Java Captain
Apr 26, 2025 · Backend Development

Creating and Customizing a Spring Boot Starter with Auto‑Configuration Explained

This article explains the problems of traditional Spring MVC setup, introduces Spring Boot starters as a solution, details naming conventions and project structure for custom starters, and walks through the implementation of auto‑configuration classes, properties binding, and the spring.factories registration process.

BackendJavaSpring Boot
0 likes · 9 min read
Creating and Customizing a Spring Boot Starter with Auto‑Configuration Explained
Java Backend Full-Stack
Java Backend Full-Stack
Apr 26, 2025 · Backend Development

Master ThreadLocal: Answer Interview Questions and Prevent OOM Leaks

This article explains ThreadLocal’s internal mechanism, why improper use can cause OutOfMemoryError in thread pools, demonstrates the issue with a Java example, and provides best‑practice guidance—especially calling remove()—to prevent memory leaks while preparing for interview questions.

ConcurrencyJavaMemory Leak
0 likes · 11 min read
Master ThreadLocal: Answer Interview Questions and Prevent OOM Leaks
Top Architect
Top Architect
Apr 26, 2025 · Backend Development

Understanding Java 8 Stream API with Practical PO Examples

This article introduces Java 8 Stream API, explains its core operations such as filter, map, sorted, forEach, collect, statistics, and parallelStream, and demonstrates their usage with a UserPo class through comprehensive code examples, while also noting unrelated promotional offers.

Backend DevelopmentCode ExampleFunctional Programming
0 likes · 11 min read
Understanding Java 8 Stream API with Practical PO Examples
Top Architect
Top Architect
Apr 26, 2025 · Backend Development

Using Spring Transaction Hooks with TransactionSynchronizationManager for Asynchronous Kafka Messaging

This article explains how to leverage Spring's TransactionSynchronizationManager to detect active transactions and register synchronization callbacks that asynchronously send Kafka messages after transaction commit, illustrated with a practical payment‑system example and complete Java code snippets.

JavaTransactionSynchronizationManagerspring
0 likes · 11 min read
Using Spring Transaction Hooks with TransactionSynchronizationManager for Asynchronous Kafka Messaging
Java Tech Enthusiast
Java Tech Enthusiast
Apr 26, 2025 · Fundamentals

Valid Parentheses Problem – Solution, Explanation, and Mid‑Career Insights

The article reflects on why mid‑career engineers are often relegated to legacy‑maintenance work, argues that such roles can be leveraged for growth by modernizing systems and adopting AI, and then presents the classic Valid Parentheses coding challenge, explaining a stack‑based solution with implementations, complexity analysis, and common pitfalls.

C++JavaPython
0 likes · 14 min read
Valid Parentheses Problem – Solution, Explanation, and Mid‑Career Insights
Architecture Development Notes
Architecture Development Notes
Apr 26, 2025 · Backend Development

Spring vs Solon: Which Java Backend Framework Wins on Performance and Flexibility?

This article compares Spring and Solon, examining their architectural philosophies, startup speed, memory usage, modular design, dependency injection, configuration management, reactive programming support, ecosystem maturity, and future roadmap, providing concrete benchmark data and practical guidance for choosing the right Java backend framework.

JavaSolonconfiguration
0 likes · 8 min read
Spring vs Solon: Which Java Backend Framework Wins on Performance and Flexibility?
Architect
Architect
Apr 25, 2025 · Backend Development

Building a High‑Performance Real‑Time Communication System with Netty and Spring Boot 3

This article explains Netty's asynchronous architecture, compares BIO/NIO/AIO models, describes its thread and pipeline designs, evaluates real‑time communication options, and provides complete frontend and backend code examples for creating a WebSocket‑based instant messaging service using Netty and Spring Boot 3.

Backend DevelopmentIO ModelJava
0 likes · 18 min read
Building a High‑Performance Real‑Time Communication System with Netty and Spring Boot 3
Architecture Digest
Architecture Digest
Apr 25, 2025 · Information Security

Integrating Apache Tika with Spring Boot for Sensitive Information Detection and Data Leak Prevention

This guide demonstrates how to integrate Apache Tika into a Spring Boot application to automatically extract file content, detect sensitive data such as ID numbers, credit cards, and phone numbers using regular expressions, and implement data leak protection through a REST API with code examples.

Apache TikaData Leak PreventionFile Parsing
0 likes · 22 min read
Integrating Apache Tika with Spring Boot for Sensitive Information Detection and Data Leak Prevention
JD Cloud Developers
JD Cloud Developers
Apr 25, 2025 · Fundamentals

How Does Go Differ from Java? A Deep Dive into Language Features

This article compares Go and Java across core language features—code organization, visibility, variable and constant declarations, functions, interfaces, data types, reference types, error handling, and control structures—providing Java developers with practical insights for adopting Go in cloud‑native development.

Error HandlingGenericsGo
0 likes · 22 min read
How Does Go Differ from Java? A Deep Dive into Language Features
JD Tech Talk
JD Tech Talk
Apr 25, 2025 · Fundamentals

Comparing Go and Java: Language Features, Syntax, and Concurrency

This article compares Go and Java by examining their core language features, code organization, visibility rules, variable and constant declarations, method and function syntax, interface implementation, basic and reference data types, error handling mechanisms, and control‑flow constructs, providing Java developers with a concise guide to Go's design principles and cloud‑native strengths.

Error HandlingGoJava
0 likes · 23 min read
Comparing Go and Java: Language Features, Syntax, and Concurrency
Top Architecture Tech Stack
Top Architecture Tech Stack
Apr 25, 2025 · Databases

MyBatis-Mate: Enterprise-Level Features for Sharding, Encryption, Data Permissions and Automatic DDL Management

mybatis-mate is an enterprise‑level MyBatis‑Plus extension that offers sharding, data auditing, dictionary binding, field encryption, sensitive‑word filtering, automatic DDL maintenance, multi‑datasource switching, performance logging, and data‑scope control, providing a comprehensive solution for agile and secure database operations.

Data PermissionJavaencryption
0 likes · 12 min read
MyBatis-Mate: Enterprise-Level Features for Sharding, Encryption, Data Permissions and Automatic DDL Management