Tagged articles

Java

5000 articles · Page 42 of 50
Xuanwu Backend Tech Stack
Xuanwu Backend Tech Stack
Sep 8, 2024 · Backend Development

Master Java Serialization & Deserialization: Techniques, Pitfalls, and Security

This article explains Java serialization and deserialization concepts, outlines common use cases such as distributed systems and caching, compares multiple implementation methods including Serializable, Externalizable, JSON, XML, and binary libraries, and provides practical code examples, security tips, and best‑practice guidelines.

DeserializationExternalizableJava
0 likes · 24 min read
Master Java Serialization & Deserialization: Techniques, Pitfalls, and Security
Architect
Architect
Sep 7, 2024 · Backend Development

How to Reset RocketMQ Consumer Offsets Using Message Backtracking – A Step‑by‑Step Guide

When a SMS service fails and messages need to be re‑sent, this article shows how to use RocketMQ's message backtracking feature to reset consumer offsets, verify the reset, and explore the internal workflow and alternative pull‑consumer strategies with concrete code examples and detailed analysis.

Distributed MessagingJavaMessage Backtracking
0 likes · 21 min read
How to Reset RocketMQ Consumer Offsets Using Message Backtracking – A Step‑by‑Step Guide
Top Architect
Top Architect
Sep 7, 2024 · Backend Development

XXL-Job Distributed Task Scheduling Framework: Project Overview and Hands‑On Guide

This article introduces the open‑source XXL-Job distributed task scheduling framework, explains its architecture and communication design, and provides a step‑by‑step hands‑on tutorial covering server deployment, executor configuration, task development (annotation, API, sharding), execution, and log inspection, with code examples and screenshots.

Backend DevelopmentJavaSpring Boot
0 likes · 14 min read
XXL-Job Distributed Task Scheduling Framework: Project Overview and Hands‑On Guide
Java Tech Enthusiast
Java Tech Enthusiast
Sep 7, 2024 · Backend Development

Understanding Tomcat and Its Integration with Spring Boot

Apache Tomcat is the underlying servlet container and web server that Spring Boot automatically embeds via the spring‑boot‑starter‑web dependency, but junior developers often miss its core roles—managing servlet lifecycles, serving static resources, and compiling JSPs—so learning Tomcat (or swapping it for Jetty by adjusting Maven exclusions) clarifies what Spring Boot abstracts and enables flexible container choices.

JavaServletSpring Boot
0 likes · 6 min read
Understanding Tomcat and Its Integration with Spring Boot
Top Architect
Top Architect
Sep 6, 2024 · Backend Development

JDFrame/SDFrame: A JVM‑Level DataFrame API for Simplified Java Stream Processing

This article introduces JDFrame and SDFrame, two Java libraries that provide a DataFrame‑style, semantic API for simplifying stream operations, including dependency setup, quick‑start examples, matrix viewing, filtering, aggregation, deduplication, grouping, sorting, joining, pagination, window functions, and a comparison of their execution models, along with links to the source code and documentation.

APIDataFrameJDFrame
0 likes · 18 min read
JDFrame/SDFrame: A JVM‑Level DataFrame API for Simplified Java Stream Processing
Top Architect
Top Architect
Sep 6, 2024 · Backend Development

14 Java Backend Code‑Optimization Tips from a Senior Architect

This article presents fourteen practical Java backend optimization techniques—including configuration‑file management, Lombok’s @RequiredArgsConstructor, modular code design, exception handling, reducing DB queries, avoiding null returns, minimizing if‑else, slimming controllers, IDE shortcuts, source‑code reading, design patterns, and efficient collections—each illustrated with clear code examples.

Backend DevelopmentDesign PatternsJava
0 likes · 10 min read
14 Java Backend Code‑Optimization Tips from a Senior Architect
Code Ape Tech Column
Code Ape Tech Column
Sep 6, 2024 · Backend Development

Comprehensive Guide to Alibaba Sentinel: Installation, Configuration, Flow Control, Degrade Rules, Hotspot Parameters, Persistence, Cluster Flow Control and More

This article provides an in‑depth tutorial on Alibaba Sentinel, covering its core concepts, installation of the dashboard, version selection, integration with Spring Boot microservices, detailed flow‑control and degrade rule configurations, hotspot parameter limiting, system adaptive protection, custom block handlers, blacklist/whitelist settings, rule persistence with Nacos, push‑mode synchronization, cluster flow control, gateway integration and OpenFeign fault‑tolerance, all illustrated with practical code examples.

FlowControlJavaSentinel
0 likes · 38 min read
Comprehensive Guide to Alibaba Sentinel: Installation, Configuration, Flow Control, Degrade Rules, Hotspot Parameters, Persistence, Cluster Flow Control and More
Shepherd Advanced Notes
Shepherd Advanced Notes
Sep 6, 2024 · Fundamentals

Long vs BigDecimal for Monetary Values: Which Is Safer?

The article examines the long‑standing debate over using Long or BigDecimal to represent monetary amounts, presents ten community‑sourced approaches with visual illustrations, analyzes the underlying precision problem, and concludes with a recommendation favoring BigDecimal for accurate financial calculations.

BigDecimalData TypesFinancial Computing
0 likes · 9 min read
Long vs BigDecimal for Monetary Values: Which Is Safer?
Java Architect Essentials
Java Architect Essentials
Sep 5, 2024 · Backend Development

Comprehensive Guide to WebSocket: Protocol, Lifecycle, API, and Java Implementation

This article provides an in‑depth overview of the WebSocket protocol, covering its fundamentals, advantages, lifecycle, message formats, Java API usage, Spring Boot integration, performance considerations, and future development directions, complete with practical code examples for both server and client sides.

APIBackend DevelopmentJava
0 likes · 18 min read
Comprehensive Guide to WebSocket: Protocol, Lifecycle, API, and Java Implementation
Java Interview Crash Guide
Java Interview Crash Guide
Sep 5, 2024 · Backend Development

Mastering Java Thread Pools: Best Practices and Configuration Guide

This article explains why using raw Thread or Runnable is discouraged in Java, introduces the core java.util.concurrent thread‑pool classes, compares the built‑in Executors factories, and provides detailed guidance on customizing ThreadPoolExecutor parameters, sizing strategies, rejection policies, hooks, shutdown procedures, and additional optimizations for robust production use.

JavaThreadPoolexecutorservice
0 likes · 12 min read
Mastering Java Thread Pools: Best Practices and Configuration Guide
Sohu Tech Products
Sohu Tech Products
Sep 5, 2024 · Backend Development

Instrumentation of gRPC in OpenTelemetry: Adding Request Size Metrics via Byte‑Buddy

The new OpenTelemetry Java instrumentation adds client and server request‑size metrics to gRPC by injecting a tracing interceptor via Byte‑Buddy bytecode enhancement, extracting payload sizes from protobuf messages, recording them with custom attributes and histograms, and applying analogous handler‑based logic for Go.

ByteBuddyInstrumentationJava
0 likes · 12 min read
Instrumentation of gRPC in OpenTelemetry: Adding Request Size Metrics via Byte‑Buddy
Top Architect
Top Architect
Sep 5, 2024 · Backend Development

Fastjson DateFormat Priority and Circular Reference Issues: Debugging and Solutions

The article details a senior architect's investigation of Fastjson problems, including a date format priority bug that behaved differently on Windows and Linux due to an outdated library version, and a circular reference serialization issue resolved by disabling specific serializer features, while offering broader insights on version management and feature control.

CircularReferenceFastjsonJava
0 likes · 13 min read
Fastjson DateFormat Priority and Circular Reference Issues: Debugging and Solutions
Top Architect
Top Architect
Sep 5, 2024 · Backend Development

Designing a Unified API Response Structure in Spring Boot with @ResponseResult

This article explains how to standardize API responses in Spring Boot by defining a JSON result format, using custom annotations, interceptors, and ResponseBodyAdvice to automatically wrap controller return values, while also discussing status code design, message handling, and code simplification techniques.

API designJavaSpring Boot
0 likes · 10 min read
Designing a Unified API Response Structure in Spring Boot with @ResponseResult
macrozheng
macrozheng
Sep 5, 2024 · Information Security

How to Automatically Mask Sensitive Data in Spring Boot with Jackson Annotations

This article explains how to implement unified data desensitization in Java Spring Boot applications by creating custom annotations, enums, serializers, and utility methods that automatically mask personal information during JSON serialization, complete with code examples and test results.

Backend DevelopmentJacksonJava
0 likes · 13 min read
How to Automatically Mask Sensitive Data in Spring Boot with Jackson Annotations
FunTester
FunTester
Sep 5, 2024 · Backend Development

Practical Java Streams Techniques: Filtering, Mapping, Reducing, and Grouping

This article introduces five practical Java Streams techniques—including precise filtering, map transformation, aggregation with reduce, and advanced grouping—to help developers write clearer, more efficient backend code, complete with code examples and explanations of each operation.

JavaStreamsgrouping
0 likes · 8 min read
Practical Java Streams Techniques: Filtering, Mapping, Reducing, and Grouping
Java Architect Essentials
Java Architect Essentials
Sep 4, 2024 · Fundamentals

Understanding Java's BigDecimal: How It Guarantees Precision

This article explains why Java's BigDecimal class maintains exact precision by examining its internal fields, demonstrating usage through test code, and walking through the add method's implementation to show how values are scaled and computed as long integers before producing the final result.

ArithmeticBigDecimalJava
0 likes · 7 min read
Understanding Java's BigDecimal: How It Guarantees Precision
21CTO
21CTO
Sep 4, 2024 · Backend Development

How to Refactor Complex if‑else Chains in Java: Enums, Factories & Strategies

This article explains why excessive if‑else statements increase cost and complexity in Java applications and demonstrates several refactoring techniques—including enums, the factory pattern, the strategy pattern, and Stream API maps—to produce cleaner, more maintainable code.

Design PatternsEnumJava
0 likes · 10 min read
How to Refactor Complex if‑else Chains in Java: Enums, Factories & Strategies
Architect
Architect
Sep 4, 2024 · Backend Development

Unlocking Spring Bean Lifecycle: 17 Extension Points Every Developer Should Master

This article systematically catalogs every Spring and Spring Boot extension interface—from ApplicationContextInitializer to DisposableBean—illustrates their invocation order with a diagram, explains practical use‑cases, and provides concrete code samples for each hook, enabling developers to tap into the bean lifecycle for custom initialization, monitoring, and cleanup.

Bean LifecycleJavaSpring
0 likes · 20 min read
Unlocking Spring Bean Lifecycle: 17 Extension Points Every Developer Should Master
Zhuanzhuan Tech
Zhuanzhuan Tech
Sep 4, 2024 · Backend Development

Optimization of Serialization in Search Recommendation Service

This report analyzes performance bottlenecks caused by serialization in a search‑recommendation system, presents detailed measurements of request latency, evaluates multiple optimization strategies—including Redis caching, lazy metric handling, and custom byte‑array serialization—and documents the resulting latency reductions and implementation considerations.

JavaPerformanceRPC
0 likes · 29 min read
Optimization of Serialization in Search Recommendation Service
Top Architect
Top Architect
Sep 4, 2024 · Backend Development

Understanding Nacos Configuration Center Long‑Polling Mechanism

This article provides a detailed walkthrough of Nacos' configuration center long‑polling mechanism, covering both client‑side initialization, reflection‑based service creation, scheduled tasks, cache handling, and server‑side request processing, with code examples and architectural diagrams to illustrate each step.

JavaMicroservicesNacos
0 likes · 13 min read
Understanding Nacos Configuration Center Long‑Polling Mechanism
Java Tech Enthusiast
Java Tech Enthusiast
Sep 4, 2024 · Information Security

Spring and Nacos Security Vulnerabilities and Mitigation Guide

Recent disclosures revealed critical Spring DoS flaws (CVE‑2024‑38809 and CVE‑2024‑38808) exploitable via oversized If‑Match/If‑None‑Match headers and malicious SpEL expressions, plus a Nacos 2.4.1 vulnerability allowing arbitrary file read/write through port 7848, mitigated by upgrading to the patched Spring and Nacos releases or restricting the vulnerable ports.

CVEJavaNacos
0 likes · 7 min read
Spring and Nacos Security Vulnerabilities and Mitigation Guide
ITPUB
ITPUB
Sep 3, 2024 · Backend Development

Boost Query Speed from 20 s to 0.5 s with MQ‑Driven Elasticsearch Separation (Java)

A large table with tens of millions of rows caused 20‑second query times, but by decoupling reads through RabbitMQ and writing data asynchronously to Elasticsearch, query latency dropped to 500 ms, with Java code examples for both producer and consumer, sync handling, and migration tips.

ElasticsearchJavaQuery Optimization
0 likes · 6 min read
Boost Query Speed from 20 s to 0.5 s with MQ‑Driven Elasticsearch Separation (Java)
Su San Talks Tech
Su San Talks Tech
Sep 3, 2024 · Backend Development

How to Build a Scalable Multi‑Tenant Architecture with Spring Boot & Spring Cloud

This article explains the concept, advantages, design considerations, and step‑by‑step implementation of a multi‑tenant architecture using Spring Boot and Spring Cloud, covering tenant isolation, database strategies, dynamic routing, security configuration, deployment scenarios, and provides complete code examples for building SaaS‑ready applications.

JavaSpring Bootsaas
0 likes · 16 min read
How to Build a Scalable Multi‑Tenant Architecture with Spring Boot & Spring Cloud
Architect
Architect
Sep 2, 2024 · Cloud Native

How Nacos Implements Long‑Polling for Real‑Time Configuration Updates

This article dissects Nacos' configuration center long‑polling mechanism, detailing the client‑side initialization, thread‑pool scheduling, cache handling, and server‑side request processing, while illustrating the flow with code snippets and diagrams to help developers understand real‑time config synchronization.

Configuration CenterJavaNacos
0 likes · 15 min read
How Nacos Implements Long‑Polling for Real‑Time Configuration Updates
Programmer XiaoFu
Programmer XiaoFu
Sep 2, 2024 · Backend Development

Designing a Dynamic Thread Pool for a Meituan Interview: Concepts and Implementation

The article explains what a dynamic thread pool is, why static pools are problematic, how to modify core parameters such as corePoolSize, maximumPoolSize, and workQueue at runtime, and provides code examples for monitoring, exposing metrics via Spring Boot Actuator, and integrating with Prometheus‑Grafana, while also listing open‑source implementations like Hippo4j and Dynamic TP.

Dynamic Thread PoolGrafanaJava
0 likes · 13 min read
Designing a Dynamic Thread Pool for a Meituan Interview: Concepts and Implementation
Code Ape Tech Column
Code Ape Tech Column
Sep 2, 2024 · Backend Development

Designing and Implementing a Workflow Approval System with Activiti

This article explains how to design a multi‑level workflow approval system using the Activiti engine, covering process diagram creation, deployment, task handling, variable management, exclusive gateways, and complete project configuration with Spring Boot and an H2 database.

ActivitiBPMNJava
0 likes · 26 min read
Designing and Implementing a Workflow Approval System with Activiti
Java Architect Essentials
Java Architect Essentials
Sep 2, 2024 · Backend Development

Dynamic Loading of JAR Files in Spring Boot Applications

This article explains how to dynamically load JAR files in a Spring Boot application, covering core concepts, benefits, usage of SpringBootClassLoader, creation of JARs, and alternative third‑party OSGi‑resource‑locator approaches with full code examples.

Dynamic LoadingJavaOSGi
0 likes · 8 min read
Dynamic Loading of JAR Files in Spring Boot Applications
IT Services Circle
IT Services Circle
Sep 1, 2024 · Backend Development

Maven vs Gradle: A Comparative Guide for Java Build Tools

The article compares Maven and Gradle, detailing their histories, core concepts, advantages, disadvantages, and performance differences, and offers practical advice for Java developers on choosing the most suitable build tool for their projects.

Build ToolsDependency ManagementGradle
0 likes · 8 min read
Maven vs Gradle: A Comparative Guide for Java Build Tools
Java Tech Enthusiast
Java Tech Enthusiast
Sep 1, 2024 · Information Security

XSS Defense in Spring Boot Applications

The article explains how to protect Spring Boot applications from XSS attacks by using custom annotations such as @XSS with an XssValidator and by implementing a request‑filter chain—including XssFilter and XssWrapper—to sanitize input, demonstrating through tests that both approaches reliably secure user data.

JavaSpring BootWeb Application
0 likes · 14 min read
XSS Defense in Spring Boot Applications
JavaEdge
JavaEdge
Aug 31, 2024 · Backend Development

How I Traced and Fixed a Netty Off‑Heap Memory Leak in a WebSocket Service

This article details a step‑by‑step investigation of a Netty off‑heap memory leak that caused Nginx 5xx errors, covering background, alert analysis, multiple debugging stages, reflective monitoring, the root‑cause NPE fix, and verification in both local and production environments.

DebuggingJavaNetty
0 likes · 14 min read
How I Traced and Fixed a Netty Off‑Heap Memory Leak in a WebSocket Service
21CTO
21CTO
Aug 31, 2024 · Backend Development

Top Java Frameworks to Accelerate Your 2024 Web Development

This article reviews the most popular Java frameworks for 2024, explaining their purpose, key features, and how they help developers build scalable, secure, and efficient web applications across various industries.

Backend DevelopmentFrameworksJava
0 likes · 9 min read
Top Java Frameworks to Accelerate Your 2024 Web Development
Selected Java Interview Questions
Selected Java Interview Questions
Aug 31, 2024 · Backend Development

Root Cause Analysis of Excessive Swap Usage in a Spring Boot Project: Native Memory Leak Triggered by MCC Package Scanning

This article details a step‑by‑step investigation of a Spring Boot application that consumed far more physical memory than its 4 GB heap limit, revealing a native‑memory leak caused by MCC's package‑scanning using Reflections and the Spring Boot ZipInflaterInputStream, and explains how configuration changes and newer Spring Boot versions resolve the issue.

JVMJavaMCC
0 likes · 13 min read
Root Cause Analysis of Excessive Swap Usage in a Spring Boot Project: Native Memory Leak Triggered by MCC Package Scanning
Java Architect Essentials
Java Architect Essentials
Aug 31, 2024 · Backend Development

Java Backend Performance Optimization: Parallel Processing, Transaction Scope, Caching, Thread Pools, and Concurrency

This article provides a comprehensive guide to improving Java backend performance by explaining parallel processing with CompletableFuture, minimizing transaction scope, effective caching strategies, proper thread‑pool configuration, cache‑line alignment, reducing object creation, lock granularity, copy‑on‑write collections, asynchronous patterns, loop optimizations, network payload reduction, and minimizing inter‑service dependencies.

ConcurrencyJavaOptimization
0 likes · 33 min read
Java Backend Performance Optimization: Parallel Processing, Transaction Scope, Caching, Thread Pools, and Concurrency
21CTO
21CTO
Aug 30, 2024 · Backend Development

How to Efficiently Check Username Uniqueness: From DB Queries to Redis Bloom Filters

This article compares three approaches for verifying username uniqueness during app registration—direct database queries, Redis caching, and Redis-backed Bloom filters—detailing their performance, scalability, memory usage, and trade‑offs, and provides Java code examples for each solution.

Bloom filterJavaRedis
0 likes · 10 min read
How to Efficiently Check Username Uniqueness: From DB Queries to Redis Bloom Filters
21CTO
21CTO
Aug 30, 2024 · Backend Development

How to Stay Ahead as a Java Developer: Tips for JDK 21, Spring Boot 3.2, and Beyond

This article compiles practical advice for Java developers feeling out‑of‑practice, covering migration to JDK 21, Spring Boot 3.2 observability, new language features, community resources, and strategies to boost confidence and stay current with the evolving Java ecosystem.

Backend DevelopmentConcurrencyJDK 21
0 likes · 9 min read
How to Stay Ahead as a Java Developer: Tips for JDK 21, Spring Boot 3.2, and Beyond
Architect
Architect
Aug 30, 2024 · Backend Development

How to Streamline Contract Signing Using Strategy, Chain‑of‑Responsibility, and Annotations

This article walks through a Java Spring‑Boot implementation of a contract‑signing workflow, explains the original chain‑of‑responsibility design, shows its limitations, and demonstrates how to replace manual bean wiring with a strategy‑based annotation and enum configuration for flexible node management.

Chain of ResponsibilityContract SigningDesign Patterns
0 likes · 15 min read
How to Streamline Contract Signing Using Strategy, Chain‑of‑Responsibility, and Annotations
Top Architect
Top Architect
Aug 30, 2024 · Backend Development

Diagnosing High Memory Usage in Spring Boot Applications: JVM Parameters and Troubleshooting Steps

The article details how a production Spring Boot system consumed excessive memory due to default JVM heap settings, explains the underlying JVM defaults, demonstrates diagnostic commands, and provides practical recommendations for configuring JVM parameters and monitoring memory usage to prevent similar issues.

Backend DevelopmentJVMJava
0 likes · 8 min read
Diagnosing High Memory Usage in Spring Boot Applications: JVM Parameters and Troubleshooting Steps
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Aug 30, 2024 · Backend Development

Master the 9 Essential SpringBoot Annotations for Backend Development

This article provides a concise yet comprehensive guide to the most common SpringBoot annotations—including @SpringBootApplication, @EnableAutoConfiguration, @ComponentScan, @Service, @Repository, @Component, @RestController, @Bean, @ResponseBody, and @Autowired—explaining their purpose, composition, and practical code examples for building robust Java backend applications.

Backend DevelopmentJavaSpring
0 likes · 6 min read
Master the 9 Essential SpringBoot Annotations for Backend Development
Su San Talks Tech
Su San Talks Tech
Aug 30, 2024 · Backend Development

Prevent Data Loss in Java Thread Pools When Services Crash

This article explains Java thread pools, their advantages, internal mechanics, common pitfalls such as oversized queues, excessive threads, and data loss on crashes, and presents a persistence‑based solution using database‑stored tasks and scheduled retries to ensure no data is lost when services go down.

Backend DevelopmentConcurrencyJava
0 likes · 8 min read
Prevent Data Loss in Java Thread Pools When Services Crash
Architecture Digest
Architecture Digest
Aug 29, 2024 · Backend Development

mybatis-mate – Enterprise‑level MyBatis Extension for Sharding, Auditing, Encryption, and Data Permissions

The article introduces mybatis-mate, an enterprise‑grade MyBatis module that supports sharding, multi‑datasource, data auditing, field encryption, sensitive‑data masking, automatic DDL maintenance, performance logging, and fine‑grained data‑scope control, providing code examples and configuration guidelines for Spring Boot projects.

Backend DevelopmentData AuditingJava
0 likes · 15 min read
mybatis-mate – Enterprise‑level MyBatis Extension for Sharding, Auditing, Encryption, and Data Permissions
Programmer XiaoFu
Programmer XiaoFu
Aug 29, 2024 · Backend Development

Why @Transactional Often Fails: 13 Real‑World Pitfalls from 6 Years of Experience

This article analyses thirteen common mistakes that cause Spring's @Transactional annotation to be ineffective or not roll back, covering unnecessary usage, private/final/static methods, self‑invocation, wrong propagation settings, async threads, unmanaged beans, exception handling and more, with concrete code demos and solutions.

AOPJavaSpring
0 likes · 21 min read
Why @Transactional Often Fails: 13 Real‑World Pitfalls from 6 Years of Experience
Top Architect
Top Architect
Aug 29, 2024 · Backend Development

Implementing Single Sign-On (SSO) with CAS and Session Management in Java

This article explains traditional session mechanisms, challenges in clustered environments, and presents solutions such as session replication and centralized storage, then details the design and implementation of a CAS-based Single Sign-On system in Java, including code for user forms, controllers, filters, and configuration.

Backend DevelopmentCASJava
0 likes · 17 min read
Implementing Single Sign-On (SSO) with CAS and Session Management in Java
Practical DevOps Architecture
Practical DevOps Architecture
Aug 29, 2024 · Backend Development

Comprehensive Java Backend Architecture Course: Spring, SpringBoot, JVM, MySQL, Redis, Microservices, and More

This course provides an in‑depth exploration of the technical challenges faced by Java architects, covering Spring bean lifecycle, AOP, transaction mechanisms, SpringBoot auto‑configuration, JVM memory models, MySQL indexing, Redis caching, microservice patterns, distributed locks, and performance optimization techniques across 99 video modules.

JavaMicroservicesSpring
0 likes · 8 min read
Comprehensive Java Backend Architecture Course: Spring, SpringBoot, JVM, MySQL, Redis, Microservices, and More
Architecture Digest
Architecture Digest
Aug 28, 2024 · Backend Development

Activiti Workflow Engine: Design, Deployment, and Implementation of a Multi‑Level Approval Process

This article explains how to use the Activiti workflow engine to design a multi‑level leave‑approval process, covering BPMN diagram creation, Spring Boot configuration, deployment, Java code for starting instances, task handling, database schema, API overview, and tips for extending the workflow without additional code.

ActivitiBPMNBackend Development
0 likes · 24 min read
Activiti Workflow Engine: Design, Deployment, and Implementation of a Multi‑Level Approval Process
DaTaobao Tech
DaTaobao Tech
Aug 28, 2024 · Backend Development

Understanding Java Virtual Threads: Principles, Implementation, and Performance

Java virtual threads, introduced in JDK 21, decouple Java threads from OS threads by using continuations and a ForkJoinPool scheduler, allowing millions of cheap, blocking‑friendly threads that boost throughput and simplify concurrent code compared to traditional platform threads or reactive frameworks, as demonstrated by performance benchmarks.

JDK21JavaVirtual Threads
0 likes · 23 min read
Understanding Java Virtual Threads: Principles, Implementation, and Performance
Programmer XiaoFu
Programmer XiaoFu
Aug 28, 2024 · Backend Development

10 Powerful MyBatis SQL Patterns Used by Top Companies

This article presents ten practical MyBatis dynamic‑SQL techniques—including foreach, if, choose, selectKey, trim, and sql fragments—explaining their attributes, common pitfalls, and providing complete Java mapper and XML examples that help reduce boilerplate and avoid errors.

Dynamic SQLJavaMyBatis
0 likes · 21 min read
10 Powerful MyBatis SQL Patterns Used by Top Companies
IT Services Circle
IT Services Circle
Aug 28, 2024 · Backend Development

Interview Experience and Technical Guide: HTTP Versions, Java Network Programming, OS I/O, Database Concurrency, Bloom Filter, Reflection, Annotations, and Synchronization

The article shares a graduate's interview experience and provides a comprehensive technical guide covering HTTP/1.x vs HTTP/2 differences, Java socket and HTTP server code, OS I/O buffering vs direct I/O, database concurrency control, Bloom filter principles, Java reflection, annotation usage, and synchronized locking semantics.

Bloom filterConcurrencyDatabase
0 likes · 21 min read
Interview Experience and Technical Guide: HTTP Versions, Java Network Programming, OS I/O, Database Concurrency, Bloom Filter, Reflection, Annotations, and Synchronization
Top Architect
Top Architect
Aug 28, 2024 · Backend Development

Using Java 8 Stream API for Collection Processing – Concepts and Code Examples

This article introduces Java 8's Stream API, explains its declarative pipeline model for filtering, mapping, sorting, and collecting data, demonstrates each operation with a UserPo example, and provides complete runnable code including parallel streams and statistical summaries.

CollectionsFunctional ProgrammingJava
0 likes · 10 min read
Using Java 8 Stream API for Collection Processing – Concepts and Code Examples
macrozheng
macrozheng
Aug 28, 2024 · Fundamentals

How Java’s New Null‑Restricted Types Aim to Eradicate NullPointerExceptions

This article explains Java’s preview Null‑Restricted and Nullable type system, showing how the new syntax (Foo! and Foo?) lets developers explicitly declare nullability, improves compile‑time safety, integrates with existing code, and compares the approach to TypeScript’s ! and ? operators.

JavaNull SafetyPreview Feature
0 likes · 7 min read
How Java’s New Null‑Restricted Types Aim to Eradicate NullPointerExceptions
Programmer DD
Programmer DD
Aug 28, 2024 · Backend Development

How to Create Custom Spring Boot Annotations for Automatic Error Logging

Learn how to simplify repetitive error-handling code in Spring Boot by creating a custom @ErrorHandler annotation that leverages Spring AOP to automatically log exceptions, with step-by-step instructions, required dependencies, annotation definition, aspect implementation, and usage examples.

AOPCustom AnnotationError Logging
0 likes · 8 min read
How to Create Custom Spring Boot Annotations for Automatic Error Logging
Su San Talks Tech
Su San Talks Tech
Aug 28, 2024 · Operations

SkyWalking Guide: Setup, Tracing, Logging & Alerts for Distributed Apps

This article walks through SkyWalking, an open‑source APM solution, covering its architecture, server and client installation, configuration for MySQL persistence, log collection, performance profiling, and alerting, while comparing it with Spring Cloud Sleuth + Zipkin and showing practical code examples.

JavaMicroservicesSkyWalking
0 likes · 15 min read
SkyWalking Guide: Setup, Tracing, Logging & Alerts for Distributed Apps
Top Architect
Top Architect
Aug 27, 2024 · Backend Development

Comprehensive Maven Guide: Basic Configuration, Dependency Management, Module Setup, and Plugin Usage

This article provides a detailed tutorial on Maven, covering repository configuration, basic project structure, dependency management, module inheritance, unified version control, and common build plugins such as jar, assembly, and shade, with practical XML examples and code snippets for Java backend projects.

Backend DevelopmentBuild ToolsDependency Management
0 likes · 26 min read
Comprehensive Maven Guide: Basic Configuration, Dependency Management, Module Setup, and Plugin Usage
macrozheng
macrozheng
Aug 27, 2024 · Backend Development

Master Java Logging: Configure Logback & Log4j2 in Spring Boot

This article explains how to use SLF4J as a facade for Logback or Log4j2, shows Maven dependencies, demonstrates logback.xml and logback‑spring.xml configurations, covers Spring Boot's default logging setup, custom log levels, profile‑based settings, and how to switch to Log4j2 for higher performance.

JavaLoggingSpring Boot
0 likes · 15 min read
Master Java Logging: Configure Logback & Log4j2 in Spring Boot
Top Architecture Tech Stack
Top Architecture Tech Stack
Aug 27, 2024 · Backend Development

Understanding Java's Parent Delegation Model for Class Loaders

The article explains Java's parent delegation model for class loaders, its benefits for stability and security, how to break it by customizing loadClass or using thread‑context class loaders, and illustrates common scenarios such as JNDI, JDBC and Tomcat's own class‑loader hierarchy.

ClassLoaderJVMJava
0 likes · 10 min read
Understanding Java's Parent Delegation Model for Class Loaders
High Availability Architecture
High Availability Architecture
Aug 27, 2024 · Backend Development

Design and Implementation of a Double‑Write Migration Strategy for the Appointment Service Using a MyBatis Plugin

This article details the background, requirements, and evaluation of migration options for the appointment service, explains why a double‑write approach with a custom MyBatis plugin was chosen, and walks through the full‑sync, incremental sync, code refactoring, plugin implementation, switch‑over procedures, and post‑migration validation to achieve reliable data isolation and system stability.

Data synchronizationDatabase MigrationJava
0 likes · 17 min read
Design and Implementation of a Double‑Write Migration Strategy for the Appointment Service Using a MyBatis Plugin
DeWu Technology
DeWu Technology
Aug 26, 2024 · Fundamentals

Understanding Java's invokedynamic and Lambda Implementation

The article explains how Java’s invokedynamic instruction and LambdaMetafactory create synthetic classes and MethodHandles to implement Lambda expressions, detailing compilation steps, stateless versus stateful handling, performance implications, and the requirement for captured variables to be effectively final.

JVMJavaLambda
0 likes · 16 min read
Understanding Java's invokedynamic and Lambda Implementation
Code Ape Tech Column
Code Ape Tech Column
Aug 26, 2024 · Backend Development

Handling Exceptions in Java ThreadPool: submit vs execute and Custom Solutions

This article explains why exceptions thrown by tasks submitted to a Java thread pool behave differently with submit and execute, demonstrates how to capture those exceptions using Future.get, try‑catch, Thread.setDefaultUncaughtExceptionHandler, and by overriding afterExecute, and provides complete code examples for each approach.

ConcurrencyExceptionHandlingJava
0 likes · 13 min read
Handling Exceptions in Java ThreadPool: submit vs execute and Custom Solutions
Top Architect
Top Architect
Aug 25, 2024 · Backend Development

Integrating Spring Boot with XXL‑Job for Distributed Task Scheduling

This article provides a comprehensive guide on integrating Spring Boot with the open‑source distributed scheduler XXL‑Job, covering installation, configuration of the admin console and executor, code examples, parameter details, comparison with other schedulers, and best practices for reliable task management.

JavaSpring BootTask Scheduling
0 likes · 17 min read
Integrating Spring Boot with XXL‑Job for Distributed Task Scheduling
Top Architect
Top Architect
Aug 25, 2024 · Information Security

RBAC Permission Analysis and Spring Security Integration with JWT

This article explains the concepts of role‑based access control (RBAC), compares RBAC models, shows how to configure permissions and user groups, and provides step‑by‑step code examples for integrating Spring Security with JWT, JSON login, password encryption and database authentication in Java backend applications.

Access ControlBackend DevelopmentJWT
0 likes · 20 min read
RBAC Permission Analysis and Spring Security Integration with JWT
Architecture Digest
Architecture Digest
Aug 25, 2024 · Backend Development

Lock4j Distributed Lock Component: Features, Configuration, and Usage Guide

Lock4j is a Java distributed lock library supporting Spring AOP, RedisTemplate, Redisson, and Zookeeper, offering simple usage, configurable properties, annotation-driven locking, custom executors, key generators, and failure strategies, with detailed setup, code examples, and advanced customization instructions.

Backend DevelopmentJavaRedis
0 likes · 6 min read
Lock4j Distributed Lock Component: Features, Configuration, and Usage Guide
Selected Java Interview Questions
Selected Java Interview Questions
Aug 25, 2024 · Backend Development

Understanding Nacos Configuration Center Long‑Polling Mechanism and Its Implementation

This article explains the principles and source‑code flow of Nacos configuration center’s long‑polling mechanism, detailing how the client initiates periodic tasks, how the server processes listener requests, and how configuration changes are detected and propagated through various internal classes and threads.

Configuration CenterJavaNacos
0 likes · 10 min read
Understanding Nacos Configuration Center Long‑Polling Mechanism and Its Implementation
Architect's Guide
Architect's Guide
Aug 25, 2024 · Backend Development

Eight Ways to Implement Asynchronous Execution in Java

This article introduces eight common Java asynchronous implementation techniques—including raw threads, Future, CompletableFuture, Spring @Async, ApplicationEvent, message queues, third‑party utilities like Hutool ThreadUtil and Guava ListenableFuture—explaining their usage, code examples, advantages, and drawbacks for improving performance in scenarios such as sending SMS or emails.

CompletableFutureFutureGuava
0 likes · 14 min read
Eight Ways to Implement Asynchronous Execution in Java
DaTaobao Tech
DaTaobao Tech
Aug 23, 2024 · Fundamentals

Common Java Pitfalls and Their Solutions

The article outlines frequent Java pitfalls—including BigDecimal precision loss, immutable lists from Arrays.asList, double division by zero returning Infinity, null values in switch statements, stream filters mutating original objects, and autoboxing nulls causing NullPointerExceptions—and provides clear explanations and practical fixes to enhance code reliability.

Arrays.asListAutoboxingBigDecimal
0 likes · 5 min read
Common Java Pitfalls and Their Solutions
Zhuanzhuan Tech
Zhuanzhuan Tech
Aug 23, 2024 · Backend Development

Upgrading to JDK 21 and Adopting Generational ZGC: Motivation, Design, Implementation, Monitoring, and Performance Evaluation

This article explains why the backend services were upgraded from JDK 8 to JDK 21, introduces the generational ZGC garbage collector, details its architecture, tuning parameters, integration steps, monitoring setup, and presents performance test results that demonstrate reduced allocation stalls, lower latency, higher throughput, and near‑zero GC pauses.

Garbage CollectionGenerational ZGCJDK21
0 likes · 20 min read
Upgrading to JDK 21 and Adopting Generational ZGC: Motivation, Design, Implementation, Monitoring, and Performance Evaluation
Architecture Digest
Architecture Digest
Aug 23, 2024 · Backend Development

Using ArthasHotSwap for Fast Hot Updates in Java Backend Development

This article introduces the ArthasHotSwap plugin, explains why hot‑updating a few Java classes in a test environment can save minutes compared to full redeployment, and provides step‑by‑step instructions—including downloading, compiling, uploading bytecode to OSS, and applying the changes on the server—complete with code snippets and screenshots.

ArthasHotSwapBackend DevelopmentDevOps
0 likes · 3 min read
Using ArthasHotSwap for Fast Hot Updates in Java Backend Development
macrozheng
macrozheng
Aug 23, 2024 · Backend Development

Validate JSON in Spring Boot with JSON Schema: Step‑by‑Step Guide

This article explains how to integrate JSON Schema validation into a Spring Boot application, covering dependency setup, schema definition, bean configuration, service implementation, controller exposure, and testing with curl to ensure JSON payloads conform to the defined rules.

APIJSON SchemaJava
0 likes · 7 min read
Validate JSON in Spring Boot with JSON Schema: Step‑by‑Step Guide
IT Xianyu
IT Xianyu
Aug 23, 2024 · Backend Development

Using Java Virtual Threads in Spring Boot: Configuration and Performance Comparison

The article explains Java's virtual threads introduced in Java 19, compares them with traditional threads, and demonstrates how to configure Spring Boot to use virtual threads, including code samples and performance benchmarks that show dramatic latency reductions in both async services and HTTP requests.

JavaSpring BootVirtual Threads
0 likes · 6 min read
Using Java Virtual Threads in Spring Boot: Configuration and Performance Comparison
Shepherd Advanced Notes
Shepherd Advanced Notes
Aug 23, 2024 · Backend Development

Which Spring MVC Extension Points Parse Parameters and Handle Return Values?

This article explains the purpose and usage of Spring MVC’s HandlerMethodArgumentResolver and HandlerMethodReturnValueHandler extension points, demonstrates how to implement custom argument resolvers and return‑value handlers, discusses common pitfalls such as handler ordering, and shows how to replace the default processors to achieve unified request and response processing.

HandlerMethodArgumentResolverHandlerMethodReturnValueHandlerJava
0 likes · 16 min read
Which Spring MVC Extension Points Parse Parameters and Handle Return Values?
Su San Talks Tech
Su San Talks Tech
Aug 23, 2024 · Backend Development

Master SpringBoot Annotations: A Complete Guide to @Controller, @Service, @Repository and More

This article provides a comprehensive overview of SpringBoot’s most commonly used annotations, covering MVC, bean, JPA, configuration, exception handling, and testing annotations, complete with clear explanations and practical code examples to help developers avoid pitfalls and write cleaner code.

Backend DevelopmentJavaSpringBoot
0 likes · 18 min read
Master SpringBoot Annotations: A Complete Guide to @Controller, @Service, @Repository and More
Eric Tech Circle
Eric Tech Circle
Aug 22, 2024 · Backend Development

Mastering Asynchronous Batch Processing with JDK 21 Virtual Threads

Using JDK 21’s standardized Virtual Threads, this guide explains how to design and implement robust asynchronous batch processing, covering common pitfalls like CPU spikes and OOM, best‑practice concurrency controls, task queue architecture, and practical code illustrations.

AsynchronousProcessingBatchProcessingConcurrency
0 likes · 6 min read
Mastering Asynchronous Batch Processing with JDK 21 Virtual Threads
Top Architect
Top Architect
Aug 22, 2024 · Backend Development

Implementing a Generic Tree Conversion Utility in Java

This article explains how to design a flexible TreeNode interface and a TreeUtil class in Java that convert flat collections into hierarchical tree structures, provides multiple static methods for object and JSON tree generation, and discusses optimization techniques for large data sets.

Data StructuresJavaTree Structure
0 likes · 10 min read
Implementing a Generic Tree Conversion Utility in Java
Java Tech Enthusiast
Java Tech Enthusiast
Aug 22, 2024 · Fundamentals

Using PowerMock for Unit Testing in Java: Basics and Advanced Techniques

The article demonstrates how PowerMock can be used to unit‑test a Java FileParser class—showing basic mocks for files and streams, advanced techniques for final and static classes, and achieving full coverage—while warning that its heavy class‑loader overhead can dramatically slow large test suites and increase memory consumption.

JUnitJavaMocking
0 likes · 10 min read
Using PowerMock for Unit Testing in Java: Basics and Advanced Techniques
21CTO
21CTO
Aug 22, 2024 · Artificial Intelligence

Best Programming Languages for AI: Python, R, Java, LISP & More

This article surveys the most suitable programming languages for artificial intelligence, detailing why Python, R, Java, LISP, Prolog, C++, Haskell, JavaScript, and Julia each excel in AI development, and provides practical FAQs for developers choosing the right language.

AIJavaProgramming Languages
0 likes · 15 min read
Best Programming Languages for AI: Python, R, Java, LISP & More
macrozheng
macrozheng
Aug 22, 2024 · Backend Development

Edit JAR Files Directly in IDEA with the JarEditor Plugin

This article introduces JarEditor, an open‑source IDEA plugin that lets Java developers modify classes and resources inside JAR files without extracting them, explains its main features, shows how to install and use it, and concludes with a brief recommendation.

IDEA PluginJAR editingJarEditor
0 likes · 5 min read
Edit JAR Files Directly in IDEA with the JarEditor Plugin