Tagged articles

Java

5000 articles · Page 40 of 50
Architecture Digest
Architecture Digest
Jul 30, 2024 · Fundamentals

Understanding the Chain of Responsibility Design Pattern with Java Examples

This article explains the Chain of Responsibility design pattern, its typical use cases, demonstrates a flawed nested‑if implementation for a multi‑level game, and then shows step‑by‑step refactorings—including an abstract handler, concrete handlers, and a factory‑based dynamic chain—using Java code examples.

Chain of ResponsibilityJavaSoftware Architecture
0 likes · 10 min read
Understanding the Chain of Responsibility Design Pattern with Java Examples
Top Architect
Top Architect
Jul 30, 2024 · Information Security

Understanding RBAC and Implementing Spring Security with JWT in Java

This article explains the concepts and models of Role‑Based Access Control (RBAC), demonstrates how to configure Spring Security for in‑memory and JWT‑based authentication, and provides complete Java code examples for permissions, user groups, password encryption, and custom login filters.

Access ControlJWTJava
0 likes · 18 min read
Understanding RBAC and Implementing Spring Security with JWT in Java
Java Backend Technology
Java Backend Technology
Jul 30, 2024 · Backend Development

Spring Annotation Development: From Bean Definition to MyBatis Integration

This article explains how Spring’s pure annotation development replaces XML bean definitions, covers component scanning, bean scopes, derived annotations, various injection methods, property file loading, and demonstrates seamless Spring‑MyBatis integration, showing step‑by‑step code examples that simplify backend configuration.

AnnotationDependency InjectionJava
0 likes · 9 min read
Spring Annotation Development: From Bean Definition to MyBatis Integration
Programmer XiaoFu
Programmer XiaoFu
Jul 30, 2024 · Fundamentals

Why Deleting or Adding Entries During a HashMap foreach Loop Triggers ConcurrentModificationException

The article explains why modifying a HashMap—by removing, adding, or putting entries—while iterating with a Java foreach loop causes a ConcurrentModificationException, demonstrates the underlying bytecode transformation, and shows how to safely perform such operations using an Iterator.

CollectionsConcurrentModificationExceptionHashMap
0 likes · 12 min read
Why Deleting or Adding Entries During a HashMap foreach Loop Triggers ConcurrentModificationException
Java Architect Essentials
Java Architect Essentials
Jul 29, 2024 · Backend Development

Optimizing a High‑Concurrency Interface: Reducing Response Time from 30 seconds to 0.8 seconds

This article presents a real‑world case study of a high‑concurrency transaction‑statistics API that originally took 30 seconds to respond, detailing problem diagnosis, SQL and Java code analysis, and a series of optimizations—including SQL rewrites, database‑side calculations, and Caffeine caching—that ultimately brought the response time below one second.

CachingJavaPostgreSQL
0 likes · 10 min read
Optimizing a High‑Concurrency Interface: Reducing Response Time from 30 seconds to 0.8 seconds
Top Architect
Top Architect
Jul 29, 2024 · Backend Development

Design Principles and Module Structure for a Spring Boot Backend Project (XiaoLe)

This article outlines essential backend design principles such as single responsibility, high cohesion, low coupling, reusability, clear boundaries, moderate modularity, layered architecture, dependency inversion, testability and future adaptability, and demonstrates their application in a multi‑module Spring Boot project with detailed Maven configurations.

JavaSpring Bootmaven
0 likes · 23 min read
Design Principles and Module Structure for a Spring Boot Backend Project (XiaoLe)
Top Architect
Top Architect
Jul 29, 2024 · Databases

Implementing Online User Counting with Redis Sorted Sets (ZSET)

This article explains how to build an online user counting feature using Redis sorted sets (ZSET) by detailing the core commands (zadd, zrangeByScore, zremrangeByScore, zrem), user identification methods, and providing Java and JavaScript code examples, while also noting unrelated promotional content at the end.

JavaRedisZSET
0 likes · 8 min read
Implementing Online User Counting with Redis Sorted Sets (ZSET)
Selected Java Interview Questions
Selected Java Interview Questions
Jul 29, 2024 · Fundamentals

Comprehensive Guide to TreeUtil: Building, Traversing, Flattening, and Sorting Tree Structures in Java

This article introduces a versatile Java TreeUtil class that demonstrates how to construct hierarchical tree structures from flat lists, perform pre-order, level-order, and post-order traversals, flatten trees back to lists, and sort nodes using generic functional interfaces, with detailed code examples.

DataStructureJavaalgorithm
0 likes · 16 min read
Comprehensive Guide to TreeUtil: Building, Traversing, Flattening, and Sorting Tree Structures in Java
IT Architects Alliance
IT Architects Alliance
Jul 29, 2024 · Fundamentals

Understanding Java BigDecimal: Overview, Constructors, Methods, Formatting, and Common Issues

This article explains Java's BigDecimal class, covering its purpose for high‑precision arithmetic, common constructors, essential methods such as add, subtract, multiply, divide, comparison, formatting with NumberFormat, handling of division exceptions, and provides a utility class with static arithmetic operations for accurate calculations.

ArithmeticBigDecimalException
0 likes · 15 min read
Understanding Java BigDecimal: Overview, Constructors, Methods, Formatting, and Common Issues
Wukong Talks Architecture
Wukong Talks Architecture
Jul 29, 2024 · Backend Development

Understanding the Java Stream Pipeline: Implementation Principles and Execution Process

This article explains the internal workings of Java's Stream API pipeline, covering how intermediate and terminal operations are recorded, combined, and executed via stages and Sink interfaces, illustrating lazy evaluation, stateful vs stateless operations, and the mechanisms behind parallel and sequential processing.

Intermediate OperationsJavaLazy Evaluation
0 likes · 21 min read
Understanding the Java Stream Pipeline: Implementation Principles and Execution Process
Code Ape Tech Column
Code Ape Tech Column
Jul 29, 2024 · Backend Development

Using Caffeine Cache in Spring Boot: Features, Algorithms, and Configuration

This article introduces Caffeine Cache, explains its W‑TinyLFU algorithm advantages over traditional FIFO, LRU, and LFU strategies, demonstrates manual, synchronous, and asynchronous loading methods, covers eviction policies, statistics, Spring Boot integration, and provides detailed configuration and code examples for Java developers.

Cache ConfigurationCaffeine cacheJava
0 likes · 30 min read
Using Caffeine Cache in Spring Boot: Features, Algorithms, and Configuration
Top Architect
Top Architect
Jul 27, 2024 · Backend Development

Various Ways to Iterate Over a Java HashMap with Code Examples

This article demonstrates seven common techniques for iterating over a Java HashMap—including iterator, entrySet, keySet, for‑each loops, lambda expressions, and both single‑threaded and parallel Streams API—providing concise code examples and performance notes for each method.

HashMapJavaLambda
0 likes · 10 min read
Various Ways to Iterate Over a Java HashMap with Code Examples
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jul 27, 2024 · Backend Development

Refactoring a Billing Service with a Responsibility‑Chain Architecture for Better Extensibility

The article explains why a complex billing module in a settlement system needs optimization, describes the problems of monolithic code and tangled responsibilities, and demonstrates a refactor using the responsibility‑chain pattern with clear, pluggable nodes, accompanied by Java code examples and best‑practice recommendations.

Design PatternsJavabackend
0 likes · 12 min read
Refactoring a Billing Service with a Responsibility‑Chain Architecture for Better Extensibility
Selected Java Interview Questions
Selected Java Interview Questions
Jul 26, 2024 · Backend Development

Zero‑Downtime SpringBoot Port Sharing: Running Two Instances on the Same Port

This article explains how to achieve seamless code updates for SpringBoot applications by allowing two instances to share the same port, detailing the underlying Tomcat embedding mechanism, DispatcherServlet handling, and providing a complete Java implementation with step‑by‑step instructions and test results.

JavaPort SharingSpringBoot
0 likes · 7 min read
Zero‑Downtime SpringBoot Port Sharing: Running Two Instances on the Same Port
IT Architects Alliance
IT Architects Alliance
Jul 26, 2024 · Information Security

Unveiling Spring Security 6: Architecture, Filters, and Authentication Deep Dive

This article provides a comprehensive analysis of Spring Security 6's architecture, explaining how the framework uses a chain of servlet Filters, the DelegatingFilterProxy, and the SecurityFilterChain to implement authentication, authorization, and protection against common attacks, while also offering practical debugging tips and configuration guidance.

AuthorizationFilter ChainJava
0 likes · 32 min read
Unveiling Spring Security 6: Architecture, Filters, and Authentication Deep Dive
Java Interview Crash Guide
Java Interview Crash Guide
Jul 25, 2024 · Backend Development

Why MapStruct Beats Manual Bean Copying in Java: Performance, Type Safety, and Advanced Features

This article explains the drawbacks of manual property copying and traditional bean utilities, introduces MapStruct as a compile‑time, high‑performance mapper with type‑safety, deep‑copy support, collection handling, and customizable field‑ignoring, and shows practical Maven and Lombok integration examples.

Bean CopyJavaObject Mapping
0 likes · 13 min read
Why MapStruct Beats Manual Bean Copying in Java: Performance, Type Safety, and Advanced Features
JD Cloud Developers
JD Cloud Developers
Jul 25, 2024 · Fundamentals

Master Defensive Programming: Strategies to Build Robust Software

Defensive programming is a proactive coding paradigm that anticipates errors and exceptions, emphasizing input validation, error isolation, assertions, thorough testing, and clear error handling, with practical examples ranging from pagination parameter checks to loop safeguards, illustrating how to enhance software robustness and stability.

Defensive ProgrammingError handlingInput Validation
0 likes · 16 min read
Master Defensive Programming: Strategies to Build Robust Software
Eric Tech Circle
Eric Tech Circle
Jul 24, 2024 · Backend Development

Designing Secure Microservice Authentication with Spring Boot 3 and OAuth2

This article explains the key changes in Spring Boot 3, outlines the new OAuth2 components, and provides a detailed design for secure microservice authentication and authorization using Spring Authorization Server, JWT, API Gateway, and client applications, complete with architecture diagrams and implementation steps.

AuthorizationJavaSpring Boot
0 likes · 9 min read
Designing Secure Microservice Authentication with Spring Boot 3 and OAuth2
vivo Internet Technology
vivo Internet Technology
Jul 24, 2024 · Backend Development

Design and Implementation of a Visual Monitoring System for Caffeine Cache

The article presents a visual monitoring system for the Caffeine Java cache that adds instance naming, memory‑usage estimation, dynamic size and expiration configuration, real‑time statistics and data queries, and a Jetty‑based HTTP control panel, enabling global cache management, trend charts, and on‑the‑fly cache invalidation.

Cache VisualizationCaffeine cacheJava
0 likes · 15 min read
Design and Implementation of a Visual Monitoring System for Caffeine Cache
Zhuanzhuan Tech
Zhuanzhuan Tech
Jul 24, 2024 · Backend Development

Applying MVEL Expression Engine for Business Indicator Calculations: Design, Performance Comparison, and Migration Strategy

This article examines the challenges of scaling store settlement calculations, evaluates several Java expression engines, selects MVEL for its performance and community support, and details the architectural redesign, database schema, caching strategy, and step‑by‑step migration process for integrating the engine into a backend system.

CacheDatabase DesignExpression Engine
0 likes · 14 min read
Applying MVEL Expression Engine for Business Indicator Calculations: Design, Performance Comparison, and Migration Strategy
Top Architect
Top Architect
Jul 24, 2024 · Information Security

Understanding Session and Token-Based Authentication with JWT in Web Applications

The article explains how HTTP’s stateless nature requires session or token mechanisms for preserving user state, compares session‑based and JWT token authentication, details JWT structure, and provides Java code examples for generating, verifying, and extracting token information, while also promoting related services.

JWTJavaSession
0 likes · 10 min read
Understanding Session and Token-Based Authentication with JWT in Web Applications
Code Ape Tech Column
Code Ape Tech Column
Jul 24, 2024 · Backend Development

Understanding and Implementing Java SPI and Spring SPI

This article explains Java's built‑in Service Provider Interface (SPI) mechanism, demonstrates how to create interfaces, implementations, and configuration files, shows testing with ServiceLoader, and compares it to Spring's SPI implementation using spring.factories, including code examples and analysis of their advantages and limitations.

JavaSPIServiceLoader
0 likes · 7 min read
Understanding and Implementing Java SPI and Spring SPI
Top Architect
Top Architect
Jul 23, 2024 · Backend Development

How to Install and Use the CheckStyle Plugin in IntelliJ IDEA

This article explains how to install the CheckStyle plugin in IntelliJ IDEA, configure it with custom rule sets such as Alibaba's, run checks on Java code, and troubleshoot common issues like missing annotations, spacing, naming, formatting, and import order, while also noting related promotional content.

Backend DevelopmentIntelliJ IDEAJava
0 likes · 6 min read
How to Install and Use the CheckStyle Plugin in IntelliJ IDEA
Selected Java Interview Questions
Selected Java Interview Questions
Jul 23, 2024 · Backend Development

Integrating URule Rule Engine into Java Projects: Installation, Configuration, and Sample Code

This article explains the background, features, installation steps, core concepts, library definitions, rule set creation (wizard and script), decision tables, practical usage scenarios, and provides complete Java and configuration code examples for integrating the URule rule engine in a Spring Boot backend application.

Decision TableJavaSpring Boot
0 likes · 15 min read
Integrating URule Rule Engine into Java Projects: Installation, Configuration, and Sample Code
macrozheng
macrozheng
Jul 23, 2024 · Fundamentals

Mastering Java Optional: Eliminate NullPointerExceptions with Clean Code

This article explains why NullPointerExceptions occur, introduces Java's Optional as a concise alternative to explicit null checks, demonstrates practical code transformations, and reviews all core Optional methods introduced in JDK 8 to improve readability and safety of Java applications.

CodeCleanlinessJavaJava8
0 likes · 10 min read
Mastering Java Optional: Eliminate NullPointerExceptions with Clean Code
Java Architect Essentials
Java Architect Essentials
Jul 23, 2024 · Cloud Native

Guide to Installing and Using MinIO with Spring Boot and Docker

This article provides a comprehensive guide to installing MinIO on CentOS 7, configuring it with Docker, integrating it into a Spring Boot application, and implementing file upload, download, and multipart upload features using MinIO's Java SDK, along with troubleshooting tips and code examples.

DockerJavaSpring Boot
0 likes · 23 min read
Guide to Installing and Using MinIO with Spring Boot and Docker
Architect
Architect
Jul 22, 2024 · Fundamentals

Understanding and Using Java BigDecimal for Precise Arithmetic

This article introduces Java's BigDecimal class, explains its purpose for high-precision arithmetic beyond double's limits, details constructors, common methods, formatting, comparison, and exception handling, and provides practical code examples and a utility class for accurate mathematical operations.

ArithmeticBigDecimalJava
0 likes · 15 min read
Understanding and Using Java BigDecimal for Precise Arithmetic
Sanyou's Java Diary
Sanyou's Java Diary
Jul 22, 2024 · Backend Development

Why Does My ThreadPool Freeze? Uncovering the Hidden Deadlock Pitfall

This article explains a subtle thread‑pool deadlock caused by parent‑child task interactions, demonstrates the issue with a reproducible demo, analyzes why the latch logic fails, and provides a practical solution of isolating thread pools to avoid false‑deadlock behavior in microservices.

CountDownLatchDeadlockJava
0 likes · 11 min read
Why Does My ThreadPool Freeze? Uncovering the Hidden Deadlock Pitfall
DaTaobao Tech
DaTaobao Tech
Jul 22, 2024 · Backend Development

Spring Bean Injection Issues and Dependency Injection Priorities

In a project with two applications, a Tair bean defined via JavaConfig works in one app but fails in the other because Spring’s injection rules prioritize type over name, causing ambiguity; using explicit bean naming with XML, adding @Qualifier, or switching to @Resource resolves the issue.

Bean ConfigurationDependency InjectionJava
0 likes · 12 min read
Spring Bean Injection Issues and Dependency Injection Priorities
JD Cloud Developers
JD Cloud Developers
Jul 22, 2024 · Backend Development

Building a Custom RPC Framework with Netty: A Step‑by‑Step Guide

This article introduces the fundamentals and key features of Remote Procedure Call (RPC), explores common use cases and popular frameworks, then walks through the design and implementation of a custom RPC system using Netty, covering protocol design, client‑server communication, serialization, encoding, decoding, and result handling.

JavaNettyRPC
0 likes · 23 min read
Building a Custom RPC Framework with Netty: A Step‑by‑Step Guide
Selected Java Interview Questions
Selected Java Interview Questions
Jul 22, 2024 · Backend Development

Using a Database as a Central Configuration Center in SpringBoot

This article analyzes the problems of scattered property configuration in SpringBoot projects, designs a database table to store configuration items, implements a configuration loader that injects database values into the Spring environment, and demonstrates testing and best‑practice considerations for a robust backend configuration solution.

JavaPropertyInjectionSpringBoot
0 likes · 11 min read
Using a Database as a Central Configuration Center in SpringBoot
macrozheng
macrozheng
Jul 22, 2024 · Backend Development

Mastering MapStruct: Boost Java Object Mapping Beyond BeanUtils

MapStruct is a powerful Java annotation‑based mapper that outperforms BeanUtils by generating compile‑time mapping implementations without reflection, supporting simple, nested, collection, and custom mappings, dependency injection, constants, expressions, and error handling, making object‑DTO conversions efficient and maintainable in Spring Boot projects.

JavaObject MappingSpring Boot
0 likes · 19 min read
Mastering MapStruct: Boost Java Object Mapping Beyond BeanUtils
Architect's Tech Stack
Architect's Tech Stack
Jul 22, 2024 · Backend Development

Using MapStruct for Efficient Bean Copying in Java

This article explains why manual property copying in layered Java applications is inefficient, compares runtime copiers like BeanUtils and BeanCopier, and demonstrates how MapStruct provides compile‑time, type‑safe, high‑performance bean mapping with support for deep copy, collection mapping, field ignoring, and Lombok integration.

Backend DevelopmentJavabean-mapping
0 likes · 10 min read
Using MapStruct for Efficient Bean Copying in Java
Su San Talks Tech
Su San Talks Tech
Jul 21, 2024 · Backend Development

8 Effective Retry Strategies for Java APIs

This article presents eight practical retry mechanisms for Java applications—including loop, recursion, HttpClient configuration, Spring Retry, Resilience4j, custom utilities, asynchronous thread‑pool retries, and message‑queue based retries—along with code examples, configuration snippets, and best‑practice guidelines to help developers handle transient network failures reliably.

Best PracticesHttpClientJava
0 likes · 17 min read
8 Effective Retry Strategies for Java APIs
Top Architect
Top Architect
Jul 20, 2024 · Backend Development

Understanding ForkJoinPool: Theory, Implementation, and Performance in Java

This article explains the limitations of ThreadPoolExecutor, introduces the Fork/Join model and ForkJoinPool in Java, demonstrates how to implement custom RecursiveTask and RecursiveAction classes with code examples, discusses pool construction, task submission, work‑stealing, monitoring methods, performance testing, and cautions about using the common pool.

ForkJoinPoolJavaThreadPool
0 likes · 29 min read
Understanding ForkJoinPool: Theory, Implementation, and Performance in Java
Top Architect
Top Architect
Jul 20, 2024 · Backend Development

Spring Framework Utility Classes Overview and Usage

This article presents a comprehensive guide to Spring's core utility classes—including Assert, ObjectUtils, StringUtils, CollectionUtils, FileCopyUtils, ResourceUtils, StreamUtils, ReflectionUtils, and AopUtils—showing their purpose, typical use‑cases, and code examples, while also containing promotional material for related services.

CodeExamplesJavaReflection
0 likes · 13 min read
Spring Framework Utility Classes Overview and Usage
Selected Java Interview Questions
Selected Java Interview Questions
Jul 20, 2024 · Backend Development

Introduction and Usage Guide for MyBatis-Mate: Enterprise Features for MyBatis-Plus

This article introduces MyBatis-Mate, an official MyBatis‑Plus extension offering enterprise‑level capabilities such as dictionary binding, field encryption, data masking, dynamic DDL maintenance, sharding, multi‑datasource switching, performance logging, and data permission control, with detailed Spring Boot integration examples.

Data MaskingJavaMyBatis
0 likes · 15 min read
Introduction and Usage Guide for MyBatis-Mate: Enterprise Features for MyBatis-Plus
Architect's Guide
Architect's Guide
Jul 20, 2024 · Backend Development

Spring Controller Scope: Singleton vs Prototype and Concurrency Safety

The article explains that Spring MVC controllers are singleton by default, which makes mutable instance fields unsafe for concurrent requests, demonstrates the issue with sample code, and shows how applying @Scope("prototype") or using ThreadLocal resolves the thread‑safety problem.

JavaPrototypeSingleton
0 likes · 4 min read
Spring Controller Scope: Singleton vs Prototype and Concurrency Safety
IT Services Circle
IT Services Circle
Jul 19, 2024 · Backend Development

Comprehensive Backend Interview Guide: MySQL Indexes, Redis Architecture, Java SpringBoot Auto‑Configuration, and JVM Memory Management

This article provides an in-depth overview of common backend interview topics, covering MySQL index structures and storage engines, Redis single‑threaded design and persistence mechanisms, Java transaction ACID properties, SpringBoot auto‑configuration principles, JVM memory regions, class loading, and garbage‑collection algorithms, all illustrated with code examples.

JVMJavaMySQL
0 likes · 40 min read
Comprehensive Backend Interview Guide: MySQL Indexes, Redis Architecture, Java SpringBoot Auto‑Configuration, and JVM Memory Management
Alibaba Cloud Native
Alibaba Cloud Native
Jul 19, 2024 · Cloud Native

Implement Distributed Scheduled Tasks with Spring Cloud Alibaba SchedulerX

This guide explains why traditional Java timers fail in microservice clusters, introduces Spring Cloud Alibaba's SchedulerX module with high‑availability and lock features, and provides step‑by‑step Maven setup, configuration, and code examples for both Alibaba SchedulerX and the open‑source ShedLock approach.

Distributed SchedulingJavaSchedulerX
0 likes · 10 min read
Implement Distributed Scheduled Tasks with Spring Cloud Alibaba SchedulerX
macrozheng
macrozheng
Jul 19, 2024 · Backend Development

Master Java Obfuscation: 5 Crazy Tricks to Write Unreadable Code

This article reveals five advanced Java tricks—using Unicode escapes in comments, over‑complicating simple logic with bitwise shifts, tampering with Boolean.TRUE via reflection, forcing both branches of an if‑else to run, and leveraging the Unsafe class for low‑level memory manipulation—to deliberately make code hard to understand.

JavaReflectionUnicode
0 likes · 12 min read
Master Java Obfuscation: 5 Crazy Tricks to Write Unreadable Code
Code Ape Tech Column
Code Ape Tech Column
Jul 19, 2024 · Backend Development

Common Pitfalls and Best Practices for Using Java Thread Pools

This article summarizes the common pitfalls, monitoring techniques, configuration guidelines, naming conventions, and practical code examples for safely using Java ThreadPoolExecutor, helping developers avoid OOM, deadlocks, and performance issues while optimizing thread‑pool usage.

BestPracticesJavaThreadPool
0 likes · 17 min read
Common Pitfalls and Best Practices for Using Java Thread Pools
Java Architect Essentials
Java Architect Essentials
Jul 19, 2024 · Backend Development

Unified TreeNode Utility Class for Multi‑Level Menus, Comments, Departments, and Categories in SpringBoot

This article explains how to create a unified SpringBoot utility class that builds hierarchical structures such as multi‑level menus, comments, departments, and categories, discusses database design choices like the optional tree_path field, provides a detailed ITreeNode interface, implementation of TreeNodeUtil with code examples, and demonstrates testing and filtering scenarios.

Backend DevelopmentJavaMulti-level Menu
0 likes · 12 min read
Unified TreeNode Utility Class for Multi‑Level Menus, Comments, Departments, and Categories in SpringBoot
IT Services Circle
IT Services Circle
Jul 18, 2024 · Artificial Intelligence

Insights on Baidu’s “Robo Fast Run” Autonomous Driving Initiative and Related Career Opportunities

The article discusses Baidu’s new autonomous‑driving service “Robo Fast Run,” its potential impact on ride‑hailing jobs, the technical challenges involved, and provides detailed guidance on the qualifications and learning paths for engineers seeking positions in Baidu’s intelligent‑driving divisions.

AIBaiduCareer Advice
0 likes · 5 min read
Insights on Baidu’s “Robo Fast Run” Autonomous Driving Initiative and Related Career Opportunities
Selected Java Interview Questions
Selected Java Interview Questions
Jul 18, 2024 · Backend Development

Exploring Nine Design Patterns in MyBatis: Builder, Factory, Singleton, Proxy, Decorator, Adapter, Composite, Template Method, and Iterator

This article examines nine design patterns employed within MyBatis—Builder, Factory, Singleton, Proxy, Decorator, Adapter, Composite, Template Method, and Iterator—detailing their roles, source code examples, and how they facilitate configuration parsing, SQL execution, and caching in the framework.

Builder PatternDesign PatternsFactory Pattern
0 likes · 18 min read
Exploring Nine Design Patterns in MyBatis: Builder, Factory, Singleton, Proxy, Decorator, Adapter, Composite, Template Method, and Iterator
Java Backend Technology
Java Backend Technology
Jul 18, 2024 · Databases

How to Accurately Track Online Users with Redis Sorted Sets

This guide explains how to implement an online user counting feature using Redis sorted sets, covering user identification methods, the essential zadd, zrangeByScore, zremrangeByScore, and zrem commands, along with code examples and a concise summary of the overall approach.

JavaRedisSorted Set
0 likes · 7 min read
How to Accurately Track Online Users with Redis Sorted Sets
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 18, 2024 · Backend Development

6 Proven Strategies to Eliminate if‑else in Spring Boot Projects

This article explains why excessive if‑else statements hurt Spring Boot code and presents six practical techniques—including strategy pattern, enums, polymorphism, lambda expressions, command pattern, and guard clauses—along with complete Java examples to make your backend more modular, readable, and maintainable.

Javabackenddesign-patterns
0 likes · 10 min read
6 Proven Strategies to Eliminate if‑else in Spring Boot Projects
Sohu Tech Products
Sohu Tech Products
Jul 17, 2024 · Backend Development

Java Thread Pool: Working Mechanism, States, and Rejection Policies

Java thread pools efficiently manage and reuse threads by applying a producer‑consumer model, transitioning through RUNNING, SHUTDOWN, STOP, and TERMINATED states, handling task queues, and employing configurable rejection policies such as Abort, CallerRuns, Discard, and DiscardOldest, while improving performance, resource utilization, and stability across web servers, asynchronous processing, and other concurrent workloads, distinct from connection pools which manage database connections.

JavaJava concurrencyPerformance Optimization
0 likes · 12 min read
Java Thread Pool: Working Mechanism, States, and Rejection Policies
DeWu Technology
DeWu Technology
Jul 17, 2024 · Backend Development

BPMN Overview and SmartEngine Implementation for Workflow Optimization

Covering workflow history, this article explains BPMN standards, outlines core modeling concepts, and demonstrates a practical SmartEngine integration that deploys BPMN 2.0 XML, highlights visual execution benefits, notes limitations in error handling and concurrency, and advises its use for moderately complex, frequently changing processes.

BPMNJavaSQL
0 likes · 24 min read
BPMN Overview and SmartEngine Implementation for Workflow Optimization
ITPUB
ITPUB
Jul 17, 2024 · Backend Development

10 Proven Techniques to Slash Java Bugs and Boost Code Quality

This guide presents ten practical strategies—including IDE selection, static analysis tools, unit testing, code reviews, and learning from others' post‑mortems—to help developers dramatically reduce bugs, improve code quality, and increase overall productivity.

JavaUnit Testingbug reduction
0 likes · 10 min read
10 Proven Techniques to Slash Java Bugs and Boost Code Quality
Top Architect
Top Architect
Jul 17, 2024 · Backend Development

Integrating Spring Boot with XXL‑Job for Distributed Task Scheduling

This article provides a step‑by‑step guide on combining Spring Boot with the open‑source XXL‑Job platform, covering its features, comparison with other schedulers, configuration of the admin console and executor, code examples, @XxlJob annotation parameters, and best practices for reliable distributed task management.

DistributedJavaSpring Boot
0 likes · 17 min read
Integrating Spring Boot with XXL‑Job for Distributed Task Scheduling
Architect
Architect
Jul 16, 2024 · Backend Development

Design and Implementation of a FIFO Export Queue for Large Data Exports in Java

This article explains how to handle massive MySQL export operations by introducing a fixed‑size FIFO queue, detailing the Java classes ExportQueue, AbstractExport, and ExportImpl, and showing a test controller that demonstrates queue limits, concurrency handling, and future considerations.

Export QueueFIFOJava
0 likes · 11 min read
Design and Implementation of a FIFO Export Queue for Large Data Exports in Java
Top Architect
Top Architect
Jul 16, 2024 · Backend Development

Plugin Architecture in Java: SPI, ServiceLoader, and Spring Boot Implementations

This article explains the concept of plugin‑based development, outlines its benefits such as modular decoupling and extensibility, and provides detailed Java implementations using ServiceLoader, custom configuration loading, and Spring Boot’s spring.factories mechanism with complete code examples and practical deployment steps.

Backend DevelopmentJavaSPI
0 likes · 23 min read
Plugin Architecture in Java: SPI, ServiceLoader, and Spring Boot Implementations
Top Architect
Top Architect
Jul 16, 2024 · Operations

Jpom – Lightweight Java‑Based Online Build, Deployment, and Operations Tool

Jpom is a simple, low‑intrusion Java‑based platform that provides online project building, automatic deployment, daily operations, and monitoring features, offering node management, SSH terminal, Docker handling, and a one‑click installation process suitable for individuals and small enterprises.

JavaJpomOperations
0 likes · 9 min read
Jpom – Lightweight Java‑Based Online Build, Deployment, and Operations Tool
Architect's Guide
Architect's Guide
Jul 16, 2024 · Backend Development

Refactoring Spring Boot Controllers: From Messy to Elegant

The article critiques overly complex Spring Boot controllers filled with repetitive validation and business logic, demonstrates cleaner implementations using @Valid, Assert, and global exception handling, and provides practical code examples and guidelines for building maintainable backend controllers.

@ValidExceptionHandlingJava
0 likes · 10 min read
Refactoring Spring Boot Controllers: From Messy to Elegant
FunTester
FunTester
Jul 16, 2024 · Backend Development

Mastering JDBC: Best Practices for Secure and Efficient Java Database Access

This guide explains how to set up JDBC drivers, construct connection URLs, use PreparedStatement instead of Statement, iterate ResultSet safely, manage resources with try‑with‑resources, handle transactions, employ connection pools, and properly process SQLExceptions for robust Java database applications.

Connection PoolJDBCJava
0 likes · 15 min read
Mastering JDBC: Best Practices for Secure and Efficient Java Database Access
Architect
Architect
Jul 15, 2024 · Information Security

Secure OpenAPI Design: AppId/AppSecret, RSA Signatures, Timestamp & Nonce Best Practices

This article explains how to secure OpenAPI interfaces by using globally unique AppId/AppSecret pairs, SHA‑256 and RSA signatures, timestamp and nonce validation, caching, rate‑limiting, parameter validation, and encryption algorithms, providing complete client‑server implementation examples in Java.

API SecurityJavaOpenAPI
0 likes · 26 min read
Secure OpenAPI Design: AppId/AppSecret, RSA Signatures, Timestamp & Nonce Best Practices
Java Tech Enthusiast
Java Tech Enthusiast
Jul 15, 2024 · Fundamentals

James Gosling's Career Journey and Retirement

James Gosling, the Canadian creator of Java, announced his retirement after a five‑decade career that spanned IBM, Sun, Oracle, Google, Liquid Robotics and Amazon, highlighted by pioneering the Java language and virtual machine, earning prestigious awards and widespread admiration from the developer community.

CareerJames GoslingJava
0 likes · 12 min read
James Gosling's Career Journey and Retirement
FunTester
FunTester
Jul 15, 2024 · Backend Development

Comparison and Practical Guide to Java etcd Clients

This article compares popular Java etcd client libraries, evaluates their features, performance, and suitability, and provides a hands‑on tutorial using jetcd with Maven dependencies, code examples for watching and reading keys, and discusses runtime considerations such as thread handling.

DistributedEtcdJava
0 likes · 10 min read
Comparison and Practical Guide to Java etcd Clients
Java Tech Enthusiast
Java Tech Enthusiast
Jul 13, 2024 · Backend Development

Implementing Captcha Login with Spring Boot and Redis

The guide demonstrates how to build a front‑end/back‑end separated captcha login using Spring Boot, Kaptcha and Redis, showing Redis‑based captcha storage with a unique key, Base64 image delivery, and verification logic that replaces traditional session‑based approaches.

APIJavaRedis
0 likes · 12 min read
Implementing Captcha Login with Spring Boot and Redis
Su San Talks Tech
Su San Talks Tech
Jul 13, 2024 · Backend Development

Master PowerJob: A Modern Java Distributed Task Scheduling Framework

PowerJob is a Java‑based, enterprise‑grade distributed task scheduling platform offering a web UI, multiple scheduling strategies (CRON, fixed rate, delay, API), diverse execution modes, workflow support, and high‑availability, with detailed installation steps via Docker or JAR, configuration guidance, and sample code.

Backend DevelopmentDistributed SchedulingJava
0 likes · 12 min read
Master PowerJob: A Modern Java Distributed Task Scheduling Framework
JD Tech
JD Tech
Jul 12, 2024 · Backend Development

Dynamic Thread Pool: Monitoring, Alerting, and Runtime Parameter Adjustment

The article explains the concept of a dynamic thread pool, identifies common pain points such as invisible runtime status, hard‑to‑trace rejections, and slow parameter tuning, and presents a comprehensive solution that includes monitoring, alerting, automatic stack dumping, and live parameter refresh for Java backend services.

Javadynamic-configurationmonitoring
0 likes · 20 min read
Dynamic Thread Pool: Monitoring, Alerting, and Runtime Parameter Adjustment
macrozheng
macrozheng
Jul 12, 2024 · Information Security

Understanding JWT: Secure Token-Based Authentication for Modern Apps

This article explains the evolution from traditional cookie‑session authentication to token‑based JWT, detailing its structure, security mechanisms, implementation steps, advantages, limitations, and practical Java code examples, while also comparing it with modern authentication challenges in web and mobile environments.

JWTJavaToken
0 likes · 15 min read
Understanding JWT: Secure Token-Based Authentication for Modern Apps
Java Backend Technology
Java Backend Technology
Jul 12, 2024 · Backend Development

Designing a Clean API Response Wrapper in Java Spring

This article explains how to standardize API responses in a micro‑service architecture by defining a JSON result format with code, message, and data fields, using HTTP‑like status code ranges, and automatically wrapping controller outputs with a custom @ResponseResult annotation and Spring's ResponseBodyAdvice.

APIJavaSpring
0 likes · 8 min read
Designing a Clean API Response Wrapper in Java Spring
Programmer DD
Programmer DD
Jul 12, 2024 · Backend Development

What’s New in VS Code for Java June 2024? Project Settings, Spring & Gradle Updates

The June 2024 VS Code for Java update introduces enhanced project settings with new compiler, Maven, and formatter tabs, easier access via the status bar, test coverage improvements, Gradle Build Server projects, Spring feature upgrades including @DependsOn support and Spring Boot 3.3 compatibility, and new extension packs for Java development.

Extension PackJavaSpring
0 likes · 8 min read
What’s New in VS Code for Java June 2024? Project Settings, Spring & Gradle Updates
Architecture Digest
Architecture Digest
Jul 11, 2024 · Backend Development

MyBatis-Plus Data Permission Interceptor: Annotation, Interceptor, and Role-Based Scope Implementation

This guide explains how to implement data permission control in MyBatis-Plus by creating a custom annotation, an interceptor that modifies SQL before execution, a handler that builds WHERE clauses based on user roles, and how to register the interceptor in the MyBatis-Plus plugin, covering both basic and advanced versions.

Data PermissionJavaMyBatis-Plus
0 likes · 13 min read
MyBatis-Plus Data Permission Interceptor: Annotation, Interceptor, and Role-Based Scope Implementation
Zhuanzhuan Tech
Zhuanzhuan Tech
Jul 11, 2024 · Fundamentals

Using Java Topology Suite (JTS) for Spatial Geometry Operations and Fast Point‑in‑Polygon Checks

This article introduces the Java Topology Suite (JTS), explains its core geometry models, WKT format, spatial relations, and operations, and demonstrates how to efficiently determine whether a point lies within service coverage polygons using MBR filtering, spatial indexes such as R‑tree and Quadtree, and geometry repair techniques.

Geometry RepairJTSJava
0 likes · 17 min read
Using Java Topology Suite (JTS) for Spatial Geometry Operations and Fast Point‑in‑Polygon Checks
21CTO
21CTO
Jul 11, 2024 · Fundamentals

James Gosling Announces Retirement: The Story Behind Java’s Creation

James Gosling, the creator of Java, has announced his retirement, prompting a look back at his life, the birth of Java from the Green project, its evolution, and his post‑Sun career moves through Oracle, Google, a robotics startup, and finally AWS.

James GoslingJavaProgramming Language History
0 likes · 8 min read
James Gosling Announces Retirement: The Story Behind Java’s Creation
Top Architect
Top Architect
Jul 11, 2024 · Backend Development

Implementing Fuzzy Company Name Matching with MySQL REGEXP and Java

This article describes a backend solution for a company approval workflow that extracts key information from company names, tokenizes them using IKAnalyzer, applies MySQL REGEXP for fuzzy matching, and sorts results by match degree, complete with code examples and deployment tips.

Javafuzzy-matchingregex
0 likes · 17 min read
Implementing Fuzzy Company Name Matching with MySQL REGEXP and Java
php Courses
php Courses
Jul 11, 2024 · Fundamentals

Understanding SOLID Principles with Java Examples

This article explains the five SOLID design principles—SRP, OCP, LSP, ISP, and DIP—detailing their definitions, common violations, and Java code examples that demonstrate how to refactor classes for better modularity, extensibility, and maintainability.

JavaSOLIDSoftware Architecture
0 likes · 7 min read
Understanding SOLID Principles with Java Examples
High Availability Architecture
High Availability Architecture
Jul 11, 2024 · Backend Development

AutoMQ Memory Cache Design and Mitigating Netty PooledByteBufAllocator Memory Fragmentation

The article explains AutoMQ's memory‑cache architecture, compares LogCache and BlockCache designs, analyzes Netty's internal and external memory fragmentation caused by the Buddy and PageRun/PoolSubpage allocators, and presents mitigation techniques such as ByteBufSeqAlloc to reduce OOM risks.

CacheDesignDirectMemoryJava
0 likes · 14 min read
AutoMQ Memory Cache Design and Mitigating Netty PooledByteBufAllocator Memory Fragmentation