Tagged articles
5000 articles
Page 20 of 50
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
Java Architect Essentials
Java Architect Essentials
Apr 30, 2025 · Backend Development

Simplifying SpringBoot Routing with @RequestMapping and Its Derived Annotations

This article explains how SpringBoot's @RequestMapping and its derived annotations like @GetMapping, @PostMapping, @PutMapping, and @DeleteMapping can reduce repetitive routing code, improve readability, and accelerate development of RESTful APIs, illustrated with practical code examples and best‑practice tips.

GetMappingPostMappingRequestMapping
0 likes · 6 min read
Simplifying SpringBoot Routing with @RequestMapping and Its Derived Annotations
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.

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

CLIJLinecommand-line
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.

Stream APIdata transformationfunctional programming
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.

ArraysString Traversalinput
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.

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

Custom AnnotationData IsolationInterceptor
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 MapperSQL Injectorjava
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.

AsynchronousCompletableFutureException Handling
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.

JVMResource ManagementRuntime
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.

NFSchunked uploadfile upload
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.

RestControllerSpringBootannotation
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 TransferReal-time StreamingResponseBodyEmitter
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 Patternsasynchronous processingbackend SDK
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.

LocalDateTimeMySQLORM
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
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 DownloadWebFluxannotation
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.

Parallel QueryThreadPooljava
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.

IntelliJ IDEAbackend-developmentbuild tools
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.

Java 21Virtual Threadsconcurrency
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 Permissionannotations
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.

annotationsdependency-injectionjava
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.

Batch ProcessingSystem Designbackend-development
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.

ExecutorServiceExecutorsThreadPool
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 BreakingMicroservicesSpring Cloud Alibaba
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.

BackendStarterauto-configuration
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.

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

Code ExampleJava 8Stream API
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.

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

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

Solonconfigurationdependency-injection
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.

IO ModelNettybackend-development
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 HandlingGoSyntax Comparison
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 Permissionencryptionjava
0 likes · 12 min read
MyBatis-Mate: Enterprise-Level Features for Sharding, Encryption, Data Permissions and Automatic DDL Management
Big Data Technology & Architecture
Big Data Technology & Architecture
Apr 25, 2025 · Artificial Intelligence

Introducing Spring AI: A Java Framework for Building Generative AI Applications

This article introduces Spring AI, a Java‑based AI framework inspired by LangChain, explains its core capabilities such as model management, inference, extension and Spring ecosystem integration, and provides step‑by‑step installation, configuration, sample code, and guidance for creating MCP services.

AI FrameworkMCPModel Management
0 likes · 6 min read
Introducing Spring AI: A Java Framework for Building Generative AI Applications
JavaEdge
JavaEdge
Apr 24, 2025 · Artificial Intelligence

How to Customize HTTP Clients for LangChain4j LLM Integration in Java

This guide explains how LangChain4j modules let you replace the default HTTP client used to call LLM provider APIs, showing two out‑of‑the‑box implementations (JdkHttpClient and SpringRestClient) and providing step‑by‑step code examples for custom JDK and Spring RestClient configurations.

HTTP clientLLMLangChain4j
0 likes · 4 min read
How to Customize HTTP Clients for LangChain4j LLM Integration in Java
Architecture Digest
Architecture Digest
Apr 24, 2025 · Backend Development

Configurable Data Desensitization in Spring Boot Using Custom Annotations and Serializer

This article demonstrates how to create a configurable data‑masking solution for Spring Boot APIs by defining a custom @DataMasking annotation, implementing masking strategies, building a custom Jackson serializer, integrating it via an AnnotationIntrospector, and testing the functionality with a sample controller.

Custom AnnotationSerializerdata masking
0 likes · 8 min read
Configurable Data Desensitization in Spring Boot Using Custom Annotations and Serializer
Sanyou's Java Diary
Sanyou's Java Diary
Apr 24, 2025 · Fundamentals

Master Java’s Concurrent Containers: Deep Dive into ConcurrentHashMap and Queues

This article provides an in‑depth exploration of Java’s concurrent collection classes, covering the design and implementation of ConcurrentHashMap, ConcurrentLinkedQueue, and the seven blocking queue variants, complete with code analysis, performance considerations, and practical usage scenarios for high‑throughput multithreaded applications.

BlockingQueueConcurrentHashMapConcurrentLinkedQueue
0 likes · 50 min read
Master Java’s Concurrent Containers: Deep Dive into ConcurrentHashMap and Queues
Java Captain
Java Captain
Apr 24, 2025 · Backend Development

Comparing Collections Using Java Stream API

This article explains how to log pre‑update data, compare old and new records, and use Java Stream operations such as filter, collect, anyMatch, noneMatch, and contains to identify differences between collections, including custom objects, with code examples and best‑practice recommendations.

Collection ComparisonJava 8Stream API
0 likes · 13 min read
Comparing Collections Using Java Stream API
FunTester
FunTester
Apr 24, 2025 · Fundamentals

How to Validate Numeric Strings in Java: Multiple Approaches Explained

This article compares five Java techniques for checking whether a string represents a valid number—including manual character iteration, Integer.parseInt/Double.parseDouble, BigDecimal, regular expressions, and Apache Commons NumberUtils—showing code samples, test cases, and the pros and cons of each method.

Apache CommonsBigDecimalNumber Validation
0 likes · 16 min read
How to Validate Numeric Strings in Java: Multiple Approaches Explained
vivo Internet Technology
vivo Internet Technology
Apr 23, 2025 · Backend Development

Optimizing Full GC Frequency in a Java Game Service Using MAT and GC Logs

By analyzing heap dumps with MAT and scrutinizing GC logs, the Vivo Internet Server Team identified thread‑local FutureAdapter and Jackson BufferRecycler objects and tuned promotion thresholds, cutting the Java game service’s Full GC occurrences from roughly 120 per day to about 30 and dramatically shortening pause times.

GC optimizationMATMemory Analyzer
0 likes · 17 min read
Optimizing Full GC Frequency in a Java Game Service Using MAT and GC Logs
Architecture Digest
Architecture Digest
Apr 23, 2025 · Backend Development

Spring Framework 7.0 Native API Versioning Support and Implementation Guide

This article explains the importance of API version control, outlines common versioning strategies, and demonstrates how Spring Framework 7.0 introduces native support with a version attribute on @RequestMapping, custom resolvers, client usage examples, and best‑practice recommendations for managing multi‑version APIs.

API VersioningSpring FrameworkWeb Development
0 likes · 10 min read
Spring Framework 7.0 Native API Versioning Support and Implementation Guide
Java Captain
Java Captain
Apr 23, 2025 · Backend Development

Custom MyBatis TypeHandler for Automatic JSON and Enum Conversion

This article explains how to create custom MyBatis TypeHandler classes to automatically convert Java objects—such as JSON strings and enum codes—to appropriate JDBC types, simplifying data persistence in Spring Boot applications and improving code maintainability.

JSONTypeHandlerdatabase
0 likes · 9 min read
Custom MyBatis TypeHandler for Automatic JSON and Enum Conversion
Java Captain
Java Captain
Apr 23, 2025 · Backend Development

Design and Selection of Local In‑Memory Caches for High‑Performance Service Architecture

This article explains the role of local in‑memory caches in high‑performance service architectures, compares implementations such as ConcurrentHashMap, Guava Cache, Caffeine, and Ehcache, discusses cache consistency and hit‑rate challenges, and recommends Caffeine as the preferred solution for multi‑level caching with Redis or Memcached.

CaffeineEhcacheGuava
0 likes · 11 min read
Design and Selection of Local In‑Memory Caches for High‑Performance Service Architecture
Java Captain
Java Captain
Apr 23, 2025 · Fundamentals

Understanding Recursion in Java: Concepts, Pros/Cons, and Practical Examples

This article explains the fundamentals of recursion in Java, covering its definition, advantages and disadvantages, differences from iteration, and provides practical examples such as traversing comment and department trees, along with code snippets, performance considerations, and improvement strategies using depth control and Stream API.

Code ExampleRecursionalgorithm
0 likes · 7 min read
Understanding Recursion in Java: Concepts, Pros/Cons, and Practical Examples
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Apr 23, 2025 · Backend Development

Master Spring Boot 3 Filters: 8 Essential Built‑in Filters Explained

This article introduces Spring Boot 3's filter mechanism, outlines core functions and application scenarios, and provides detailed code examples for eight built‑in filters such as CharacterEncodingFilter, CorsFilter, and HiddenHttpMethodFilter, helping developers build secure and efficient web applications.

ServletWeb Securitybackend-development
0 likes · 7 min read
Master Spring Boot 3 Filters: 8 Essential Built‑in Filters Explained
IT Services Circle
IT Services Circle
Apr 22, 2025 · Backend Development

Effective Date and Time Handling in Java: Pitfalls, Thread Safety, and Advanced Solutions

This article explores common pitfalls in Java date handling such as thread‑unsafe SimpleDateFormat and daylight‑saving issues, and presents robust solutions including ThreadLocal wrappers, Java 8 Date‑Time API, timezone‑aware calculations, caching strategies, and global interceptor designs to ensure safe, performant, and maintainable time processing.

ThreadSafetyTimezonedatetime
0 likes · 10 min read
Effective Date and Time Handling in Java: Pitfalls, Thread Safety, and Advanced Solutions
Java Captain
Java Captain
Apr 22, 2025 · Backend Development

Implementing Asynchronous Calls in SpringBoot with @Async

This article explains why asynchronous programming improves concurrency in SpringBoot applications, describes how to enable @Async support, configure a custom ThreadPoolTaskExecutor, annotate methods for async execution, and outlines the underlying proxy mechanism that powers @Async.

AsyncAsyncSpringBoot
0 likes · 5 min read
Implementing Asynchronous Calls in SpringBoot with @Async
Java Captain
Java Captain
Apr 22, 2025 · Backend Development

Implementing Data Isolation with MyBatis Interceptor and Custom Annotations in Java

This article describes how to achieve multi‑environment data isolation in a Java backend by adding an env field to tables, using a MyBatis interceptor with JSqlParser to rewrite SQL, and applying custom annotations and AOP to control environment‑specific logic while preserving existing business code.

BackendCustom AnnotationData Isolation
0 likes · 9 min read
Implementing Data Isolation with MyBatis Interceptor and Custom Annotations in Java
Sanyou's Java Diary
Sanyou's Java Diary
Apr 21, 2025 · Fundamentals

Is Java's ConcurrentHashMap Strongly Consistent? Unveiling the Truth

This article explains the difference between strong and weak consistency, explores Java's memory model, visibility and ordering issues, and shows how Java 8 redesigns ConcurrentHashMap with CAS and Unsafe to achieve strong consistency for put and get operations.

ConcurrentHashMapConsistencyMemory Model
0 likes · 15 min read
Is Java's ConcurrentHashMap Strongly Consistent? Unveiling the Truth
JavaEdge
JavaEdge
Apr 21, 2025 · Artificial Intelligence

How to Build a LangChain4j MCP Tool Provider with Docker and GitHub Integration

This tutorial explains how to use LangChain4j's Model Context Protocol (MCP) to create a tool provider, configure HTTP or stdio transports, run a GitHub MCP server in Docker, and employ a language model to summarize recent repository commits, complete with code samples and logging customization.

AIDockerGitHub
0 likes · 11 min read
How to Build a LangChain4j MCP Tool Provider with Docker and GitHub Integration
Java Captain
Java Captain
Apr 21, 2025 · Backend Development

MyBatis-Plus Guide: Features, Quick Start, CRUD Extensions, and Advanced Usage

This article introduces MyBatis‑Plus, an enhancement for MyBatis, outlining its lightweight features, step‑by‑step setup including database creation, Maven dependency, configuration, entity and mapper definitions, CRUD operations, pagination, optimistic locking, logical deletion, condition wrappers, and code generation utilities for rapid backend development.

CRUDORMcode-generation
0 likes · 12 min read
MyBatis-Plus Guide: Features, Quick Start, CRUD Extensions, and Advanced Usage
Java Captain
Java Captain
Apr 21, 2025 · Backend Development

Understanding Java Annotations and Reflection: Built‑in Annotations, Meta‑annotations, Custom Annotations, Class Loading and Runtime Reflection

This article explains Java annotations—including built‑in, meta‑ and custom annotations—covers how they are used in Spring, describes the Java reflection mechanism, class loading process, ways to obtain Class objects, and demonstrates retrieving generic and annotation information at runtime with code examples.

Meta-AnnotationReflectionannotations
0 likes · 15 min read
Understanding Java Annotations and Reflection: Built‑in Annotations, Meta‑annotations, Custom Annotations, Class Loading and Runtime Reflection
Java Architecture Diary
Java Architecture Diary
Apr 21, 2025 · Backend Development

Mastering API Versioning in Spring Framework 7.0: Strategies and Code Samples

Spring Framework 7.0 introduces native API versioning support, enabling developers to manage multiple API versions through URI, request header, query parameter, and content negotiation strategies, with detailed implementation examples, customizable resolvers, and client-side usage via WebClient, ensuring backward compatibility and flexible version control.

BackendWebapi-versioning
0 likes · 11 min read
Mastering API Versioning in Spring Framework 7.0: Strategies and Code Samples
Java Captain
Java Captain
Apr 20, 2025 · Backend Development

Comprehensive Guide to JSON Conversion Using Fastjson in Java

This article provides a detailed tutorial on JSON fundamentals and demonstrates how to convert between Java objects, collections, maps, and JSON strings or objects using Alibaba's fastjson library, covering key‑value and array structures, code examples, and practical conversion scenarios.

BackendJSONdata serialization
0 likes · 11 min read
Comprehensive Guide to JSON Conversion Using Fastjson in Java
Java Captain
Java Captain
Apr 20, 2025 · Backend Development

Dynamic Adjustment of Scheduled Tasks in SpringBoot Using ThreadPoolTaskScheduler

This article explains how to dynamically modify the execution time of SpringBoot scheduled tasks by combining ScheduledTaskRegistrar with ThreadPoolTaskScheduler, decoupling business logic from triggers, and provides complete code examples for adding, updating, and removing tasks at runtime.

Dynamic SchedulingScheduledTaskSpringBoot
0 likes · 9 min read
Dynamic Adjustment of Scheduled Tasks in SpringBoot Using ThreadPoolTaskScheduler
Java Tech Enthusiast
Java Tech Enthusiast
Apr 20, 2025 · Backend Development

Understanding Domain-Driven Design (DDD) with Practical Examples

Domain‑Driven Design (DDD) aligns software structure with business concepts by embedding rules in rich domain models, using aggregates, domain services, and events, contrasting with traditional anemic layers, and is ideal for complex, evolving domains such as e‑commerce, finance, or ERP systems.

DDDDesign PatternsDomain-Driven Design
0 likes · 9 min read
Understanding Domain-Driven Design (DDD) with Practical Examples
Su San Talks Tech
Su San Talks Tech
Apr 19, 2025 · Backend Development

How to Refactor Smelly if…else Chains in Java: 5 Clean Design‑Pattern Solutions

This article examines the problems of long if…else statements in Java payment services, explains why they violate the Open‑Closed and Single Responsibility principles, and presents five practical refactoring techniques—including annotations, dynamic bean names, template methods, strategy‑factory, and chain‑of‑responsibility patterns—to eliminate the conditional logic.

DesignPatternsOpenClosedPrincipleStrategyPattern
0 likes · 16 min read
How to Refactor Smelly if…else Chains in Java: 5 Clean Design‑Pattern Solutions
dbaplus Community
dbaplus Community
Apr 19, 2025 · Fundamentals

Why Thread.sleep(0) Can Influence GC: Uncovering JVM Safepoint Tricks

This article explores the puzzling "prevent gc" comment in RocketMQ source code, explains how Thread.sleep(0) interacts with JVM safepoints, distinguishes counted and uncounted loops, and demonstrates practical experiments that reveal why altering loop variables can change GC behavior.

JVMRocketMQSafepoint
0 likes · 12 min read
Why Thread.sleep(0) Can Influence GC: Uncovering JVM Safepoint Tricks
Java Captain
Java Captain
Apr 18, 2025 · Backend Development

Career Development and Knowledge Building for Java Backend Engineers

The article shares a Java backend developer’s personal reflections on work methods, building a systematic knowledge base, and early career planning, offering practical advice on attitude, growth mindset, balancing work and life, and navigating the evolving IT industry.

BackendWork Practicescareer
0 likes · 13 min read
Career Development and Knowledge Building for Java Backend Engineers
Top Architect
Top Architect
Apr 18, 2025 · Backend Development

Comprehensive Guide to Using the XXL‑Job Distributed Task Scheduling Framework

This article provides a step‑by‑step tutorial on installing, configuring, and using the open‑source XXL‑Job distributed scheduling framework with Spring Boot, covering server and executor deployment, task creation via annotations, API and sharding, execution, logging, and the underlying Netty‑based communication design.

Distributed SchedulingXXL-JOBjava
0 likes · 14 min read
Comprehensive Guide to Using the XXL‑Job Distributed Task Scheduling Framework
Top Architect
Top Architect
Apr 18, 2025 · Backend Development

Optimizing XML-to-MySQL Import: Reducing Execution Time from 300 s to 4 s with Batch Processing and Multithreading

This article details how to dramatically speed up importing over 60,000 XML records into MySQL by profiling the original 300‑second implementation, enabling JDBC batch writes, configuring MySQL rewriteBatchedStatements, and applying a Disruptor‑based multithreaded pipeline, ultimately achieving sub‑5‑second runtimes with modest memory usage.

BatchProcessingDisruptorMySQL
0 likes · 15 min read
Optimizing XML-to-MySQL Import: Reducing Execution Time from 300 s to 4 s with Batch Processing and Multithreading
Zhuanzhuan Tech
Zhuanzhuan Tech
Apr 18, 2025 · Artificial Intelligence

AI‑Powered Tools to Boost Java Development Efficiency: A Comprehensive Guide

An in‑depth guide reviews six leading AI‑driven development tools—including GitHub Copilot, Alibaba Cloud CodeWhisperer, Tabnine, Tencent Hunyuan DevBox, Amazon CodeWhisperer, and CodeGeeX—detailing their core features, use cases, security considerations, and selection advice for Java developers seeking to automate code generation, review, configuration, performance tuning, and documentation.

AIDocumentationcode-generation
0 likes · 18 min read
AI‑Powered Tools to Boost Java Development Efficiency: A Comprehensive Guide
Code Ape Tech Column
Code Ape Tech Column
Apr 18, 2025 · Backend Development

Dynamic Cron Expression Management in SpringBoot Scheduling

This article explains how to enable SpringBoot scheduling with @EnableScheduling and @Scheduled, describes the three scheduling modes (cron, fixedDelay, fixedRate), and provides a complete solution for dynamically updating, disabling, and re‑enabling Cron expressions at runtime using custom interfaces and configuration classes.

BackendSchedulingSpringBoot
0 likes · 10 min read
Dynamic Cron Expression Management in SpringBoot Scheduling
FunTester
FunTester
Apr 18, 2025 · Backend Development

Using CompletableFuture for Parallel REST Calls in Java

The article explains why serial REST calls cause performance bottlenecks, illustrates the benefits of concurrent requests, and demonstrates how Java 8's CompletableFuture can be used to implement parallel REST calls with robust exception handling, improving throughput and resource utilization.

CompletableFutureParallelismjava
0 likes · 10 min read
Using CompletableFuture for Parallel REST Calls in Java
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Apr 18, 2025 · Backend Development

Discover 17 Spring Boot Return Types: From @ResponseBody to Flux & Mono

This article explains how Spring Boot controllers can return up to 17 different response types—including @ResponseBody, HttpEntity, ResponseEntity, HttpHeaders, ErrorResponse, ProblemDetail, String views, ModelAndView, @ModelAttribute, DeferredResult, Callable, CompletableFuture, ResponseBodyEmitter, SseEmitter, StreamingResponseBody, Flux and Mono—providing code examples, usage notes, and sample output images for each.

Return TypesWeb Developmentjava
0 likes · 16 min read
Discover 17 Spring Boot Return Types: From @ResponseBody to Flux & Mono
Java Architect Essentials
Java Architect Essentials
Apr 17, 2025 · Fundamentals

A Comprehensive Guide to Java Code Quality Tools: Alibaba Java Coding Guidelines, CheckStyle, PMD, FindBugs, and SonarLint

This article introduces several Java code quality tools—including Alibaba Java Coding Guidelines, CheckStyle, PMD, FindBugs, and SonarLint—detailing their installation, usage, and key features to help developers improve code standards, detect bugs, and streamline code review processes.

IDE pluginscode qualityfindbugs
0 likes · 13 min read
A Comprehensive Guide to Java Code Quality Tools: Alibaba Java Coding Guidelines, CheckStyle, PMD, FindBugs, and SonarLint
Sanyou's Java Diary
Sanyou's Java Diary
Apr 17, 2025 · Backend Development

Why Does Log4j2 Async Logging Block Threads? Deep Dive & Solutions

Log4j2’s asynchronous logging can cause thread blocking when the Disruptor ring buffer fills, a problem explored through its architecture, root causes, and practical mitigation strategies such as dual‑track log classification, bytecode‑enhanced line‑level control, Maven plugins, and IDE integrations for dynamic log management.

asynchronous loggingjavalog4j2
0 likes · 13 min read
Why Does Log4j2 Async Logging Block Threads? Deep Dive & Solutions
ITPUB
ITPUB
Apr 17, 2025 · Databases

Migrate 700TB Over 2Mbps: Scripts, Sneakernet & Practical Steps

When a manager demands a script to move a 700‑terabyte database under a 2 Mbps bandwidth cap, the realistic solution combines physical Sneakernet transfer with a carefully staged export‑transform‑load script that handles field mapping, compression, rate‑limited transport, and fault‑tolerant import.

ETLjavalarge data transfer
0 likes · 8 min read
Migrate 700TB Over 2Mbps: Scripts, Sneakernet & Practical Steps
IT Services Circle
IT Services Circle
Apr 17, 2025 · Backend Development

McDonald's Java Backend Interview Experience and Technical Q&A

This article shares a candidate's interview experience at McDonald's China Technology R&D Center, detailing salary expectations, work schedule, and an extensive technical Q&A covering IoC/DI, MyBatis, JVM memory and garbage‑collection algorithms, MySQL storage engines, concurrency, locking, RPC, HTTPS, Docker/Kubernetes commands, and Git workflows, while also including some promotional material.

BackendDockerKubernetes
0 likes · 22 min read
McDonald's Java Backend Interview Experience and Technical Q&A
Top Architect
Top Architect
Apr 17, 2025 · Backend Development

Plugin Architecture in Java: Implementing Modular Extensions with ServiceLoader, Spring Factories, and Custom Configurations

This article explains how to design and implement a plugin mechanism in Java and Spring Boot, covering the benefits of modular decoupling, common implementation patterns such as ServiceLoader and custom configuration files, and practical code examples for building extensible backend services.

ServiceLoaderdependency-injectionjava
0 likes · 23 min read
Plugin Architecture in Java: Implementing Modular Extensions with ServiceLoader, Spring Factories, and Custom Configurations
Cognitive Technology Team
Cognitive Technology Team
Apr 17, 2025 · Backend Development

Understanding and Solving NIO Empty Polling in Java with Netty

This article explains the root causes of Java NIO empty polling, its impact on CPU usage, and presents Netty's multi‑layer detection, threshold‑based auto‑rebuild, and selector reconstruction techniques, along with configuration tips and future optimization directions for high‑concurrency backend systems.

EmptyPollingNettyjava
0 likes · 8 min read
Understanding and Solving NIO Empty Polling in Java with Netty
Selected Java Interview Questions
Selected Java Interview Questions
Apr 17, 2025 · Backend Development

Understanding Java SPI and Implementing a Plugin Architecture

This article explains Java's Service Provider Interface (SPI) mechanism, compares SPI with traditional APIs, and provides a step‑by‑step guide—including Maven project setup, interface definition, implementation classes, custom class loader, and Spring Boot integration—to build a dynamic plugin system for backend applications.

SPIbackend-developmentjava
0 likes · 16 min read
Understanding Java SPI and Implementing a Plugin Architecture
macrozheng
macrozheng
Apr 17, 2025 · Backend Development

Mastering Rate Limiting: 4 Proven Strategies to Protect Your Services

Facing a sudden 35% error rate in a payment API, the article explores why unprotected services crash, then details four common rate‑limiting algorithms—fixed window, sliding window, leaky bucket, token bucket—offering Java implementations, real‑world case studies, pitfalls, and performance tuning tips for production systems.

Backendjavarate limiting
0 likes · 10 min read
Mastering Rate Limiting: 4 Proven Strategies to Protect Your Services
Cognitive Technology Team
Cognitive Technology Team
Apr 16, 2025 · Backend Development

Automatic Trace-Wrapped ThreadPool Instances in Spring Cloud

This article explains how Spring Cloud automatically wraps managed thread pool beans with trace-enabled proxies to preserve distributed tracing information, details the ExecutorBeanPostProcessor implementation, shows the relevant configuration and instrumentation code, and notes that manually created executors must be wrapped manually.

InstrumentationSpring CloudThreadPool
0 likes · 7 min read
Automatic Trace-Wrapped ThreadPool Instances in Spring Cloud
Architect
Architect
Apr 16, 2025 · Backend Development

Flow Engine and Plugin Extension Engine for Business Isolation and Extensibility in MemberClub

The article explains how the MemberClub open‑source project leverages a flow engine and plugin extension engine to achieve business code isolation and extensibility, illustrating the problems of if‑else branching in multi‑business systems, providing configuration examples, execution principles, and Java code snippets.

Business IsolationSpringBootflow engine
0 likes · 8 min read
Flow Engine and Plugin Extension Engine for Business Isolation and Extensibility in MemberClub