Using a Byte Array as Map Key in Java
1. Introduction In this tutorial, we'll learn how to use a byte array as a key in HashMap. Because of how HashMap works, we, unfortunately, can't do that directly. We'll investigate why is that and...
View ArticleDetermine if an Integer’s Square Root Is an Integer in Java
1. Overview A perfect square is a number that can be expressed as the product of two equal integers. In this article, we'll discover multiple ways to determine if an integer is a perfect square in...
View ArticleJava Weekly, Issue 368
1. Spring and Java >> Pattern Matching in the Java Object Model [github.com] Java language architects on how pattern matching may get integrated into the Java language! >> Creating...
View ArticleEvaluating a Math Expression in Java
1. Overview In this tutorial, we'll discuss various approaches to evaluate a math expression using Java. This feature could come in handy in projects where we want to evaluate math expressions provided...
View ArticleExperimental Garbage Collectors in the JVM
1. Introduction In this tutorial, we'll cover the basic problems with Java memory management and the need to constantly find better ways to achieve it. This will primarily cover the new experimental...
View ArticleHow to Convert a Hibernate Proxy to a Real Entity Object
1. Overview In this tutorial, we'll learn how to convert a Hibernate proxy to a real entity object. Before that, we'll understand when Hibernate creates a proxy object. Then, we'll talk about why...
View ArticleHow to Analyze Java Thread Dumps
1. Introduction Applications sometimes hang up or run slowly, and identifying the root cause is not always a simple task. A thread dump provides a snapshot of the current state of a running Java...
View ArticleClean Architecture with Spring Boot
1. Overview When we're developing long-term systems, we should expect a mutable environment. In general, our functional requirements, frameworks, I/O devices, and even our code design may all change...
View ArticleJava Weekly, Issue 369
1. Spring and Java >> Quarkus 1.11 released – RESTEasy Reactive, Dev UI, and more! [quarkus.io] Fully reactive JAX-RS implementation, Dev UI, enhanced Micrometer support, and many more features...
View ArticleIntroduction to JVM Intrinsics
1. Introduction In this article, we're going to learn what intrinsics are and how they work in Java and other JVM-based languages. 2. What Are Intrinsics? An intrinsic function is a function that has...
View ArticleOverview of Mockito MockSettings
1.Overview More often than not, the default settings provided by Mockito for our mock objects should be more than sufficient. However, there may be occasions when we need to provide additional mock...
View ArticleUsing Custom User Providers with Keycloak
1. Introduction In this tutorial, we'll show how to add a custom provider to Keycloak, a popular open-source identity management solution, so we can use it with existing and/or non-standard user...
View ArticleStructural Patterns in Core Java
1. Overview Structural design patterns are those that simplify the design of large object structures by identifying relationships between them. They describe common ways of composing classes and...
View ArticleSetting a Request Timeout for a Spring REST API
1. Overview In this tutorial, we'll explore a few possible ways to implement request timeouts for a Spring REST API. We'll discuss the benefits and drawbacks of each. Request timeouts are useful for...
View ArticleIs Java a Compiled or Interpreted Language?
1. Overview Programming languages are classified based on their levels of abstraction. We differentiate high-level languages (Java, Python, JavaScript, C++, Go), low-level (Assembler), and finally,...
View ArticleGuide to Docker Volumes
1. Overview Docker containers are used to run applications in an isolated environment. By default, all the changes inside the container are lost when the container stops. If we want to keep data...
View ArticleWhere Should the Spring @Service Annotation Be Kept?
1. Introduction As software developers, we're always looking for the best practices for using a given technology or library. Naturally, there are debates sometimes. One such debate is regarding the...
View ArticleAn Introduction to the Constant Pool in the JVM
1. Introduction When we compile a .java file, we get a separate class file with a .class extension. The .class file consists of several sections and a constant pool is one of them. In this quick...
View ArticleJava Weekly, Issue 370
1. Spring and Java >> Java 1.0 Turns 25 [infoq.com] Write once, run everywhere turns 25 – a brief history of Java evolution throughout these 25 years! >> Interview with Brian Goetz...
View ArticleUsing the Map.Entry Java Class
1. Overview We often use maps to store a collection of key-value pairs. Then, at some point, we often need to iterate over them. In this tutorial, we'll compare different methods of map iteration,...
View Article