Spring Security 6.3 – What’s New
Spring Security 6.3 introduces several enhancements and new features that aim to improve security, developer experience, and performance. With modern security demands in mind, this version adds...
View ArticleBeyond Exceptions: Better Ways to Handle Errors in Java
In the world of Java development, exceptions are a powerful tool for handling unexpected errors and maintaining code robustness. However, the misuse of exceptions, particularly the overuse of so-called...
View ArticleCucumber: Pass List Param
Cucumber is a popular tool used for Behavior-Driven Development (BDD). When writing tests, passing different types of data to step definitions is often necessary. Let us delve into understanding how to...
View ArticleHow to Handle Default Values in Avro
Apache Avro is a popular data serialization framework used in big data systems like Apache Kafka and Hadoop. One of its key features is the ability to define schemas for structured data. In Avro,...
View ArticleHashSet vs. TreeSet: A Comparative Analysis
HashSet and TreeSet are both implementations of the Set interface in Java, used to store unique elements. While they share the same basic functionality, they differ significantly in their underlying...
View ArticleFix IllegalStateException Blocking
When working with reactive programming in Java, especially using Spring WebFlux, developers may encounter the java.lang.IllegalStateException indicating that methods like block(), blockFirst(), and...
View ArticleRabbitMQ Consumer Acknowledgments & Publisher Confirmations
RabbitMQ is a robust message broker widely used to facilitate communication between different components in distributed systems. Two critical aspects of RabbitMQ are Consumer Acknowledgments and...
View ArticleMaven and Gradle: A Side-by-Side Comparison
In the realm of Java development, build tools play a crucial role in automating the process of building, testing, and deploying applications. Maven and Gradle are two popular options that have gained...
View ArticleQuarkus Citrus Test Tutorial
Quarkus, as a Kubernetes-native Java stack, provides an efficient environment for building Java applications, especially for containerized environments. Testing is critical to ensure these applications...
View ArticleUpload Files With GraphQL in Java
File uploads are a common feature in modern applications, and GraphQL can handle them with some customization. GraphQL doesn’t natively support file uploads out of the box, and managing file uploads in...
View ArticleBest Practices for Using DTOs in Java
Data Transfer Objects (DTOs) are essential components of Java applications, serving as intermediaries between different layers of the application. By encapsulating data and providing a clear contract...
View ArticleMessage Conversion in Spring Cloud AWS v3
Message conversion involves transforming messages between various formats and representations as they are sent and received by applications. AWS SQS supports text-based payloads, and Spring Cloud AWS...
View ArticleJava Flatten 2D array Into 1D Array
Arrays are the most basic data structures in any language. Although we don’t work on them directly in most cases, knowing how to manipulate them efficiently can dramatically improve our code.In this...
View ArticleMastering Spring Webflux Functional Endpoints
Spring Webflux is a reactive framework that provides a non-blocking, asynchronous approach to building web applications in Java. One of its key features is the ability to create functional endpoints,...
View ArticleOptimal Approaches for Structuring API Responses in Spring Boot
When building RESTful APIs with Spring Boot, structuring API responses effectively is crucial for delivering a clear, consistent, and user-friendly interface. A well-structured API response not only...
View ArticleCreate a Retrieval-Augmented Generation (RAG) App with Vector Stores and...
Vector databases often work as memory for AI apps, especially those using large language models (LLMs). They allow for semantic search, which helps find relevant information to improve the prompts sent...
View ArticleCheck Array Is Null or Empty Example
1. Introduction An array is a data structure that holds a fixed number of elements with the same data type. In Java, an array object can be null. When an array is created for object types, e.g. String,...
View ArticleJava Memory Management: Key Interview Questions and Expert Answers
Memory management is a crucial aspect of Java development, ensuring efficient use of system resources and preventing issues like memory leaks or out-of-memory errors. In Java, memory management is...
View ArticleConvert Month Name to Number in Java
When dealing with months in Java, we often use numbers because they provide a consistent format that works well across different languages and regions, as month names vary widely. This article will...
View ArticleMastering RestTemplate in Spring: Usage Guide and Best Practices
In modern Java applications, especially those built with Spring, making HTTP requests to interact with RESTful services is a common requirement. The RestTemplate class provides a simple and effective...
View Article