Trampoline – Managing Spring Boot Applications Locally
1. Trampoline Overview Historically, a simple way to run understand the state of our system at runtime was to that manually in a terminal. Best case scenario, we’d automatize everything using scripts....
View ArticleKotlin-allopen and Spring
1. Overview In Kotlin, all classes are final by default which, beyond its clear advantages, can be problematic in Spring applications. Simply put, some areas in Spring only work with non-final...
View ArticleNumber of Digits in an Integer in Java
1. Introduction In this quick tutorial, we’ll explore different ways of getting the number of digits in an Integer in Java. We’ll also analyze those different methods and will figure out which...
View ArticleTest a Linked List for Cyclicity
1. Introduction A singly linked list is a sequence of connected nodes ending with a null reference. However, in some scenarios, the last node might point at a previous node – effectively creating a...
View ArticleIntroduction to JCache
1. Overview Simply put, JCache is the standard caching API for Java. In this tutorial, we’re going to see what JCache is and how we can use it. 2. Maven Dependencies To use JCache, we need to add the...
View ArticleIntroduction to RxJava
1. Overview In this article, we’re going to focus on using Reactive Extensions (Rx) in Java to compose and consume sequences of data. At a glance, the API may look similar to Java 8 Streams, but in...
View ArticleIntroduction to Retrofit
1. Overview Retrofit is a type-safe HTTP client for Android and Java – developed by Square (Dagger, Okhttp). In this article, we’re going to explain how to use Retrofit, with a focus on its most...
View ArticleGenerate Spring Boot Project with Swagger
1. Introduction In this article, we’ll use the Swagger CodeGen project to generate a REST client from an OpenAPI/Swagger spec file. Also, we’ll create a Spring Boot project, where we’ll use generated...
View ArticleThe RequestBody and ResponseBody Annotations in Spring
1. Introduction In this quick article, we provide a concise overview of the Spring @RequestBody and @ResponseBody annotations. 2. @RequestBody Simply put, the @RequestBody annotation maps the...
View ArticleCompact Strings in Java 9
1. Overview Strings in Java are internally represented by a char[] containing the characters of the String. And, every char is made up of 2 bytes because Java internally uses UTF-16. For instance, if...
View ArticleRxJava and Error Handling
1. Introduction In this article, we’ll take a look at how to handle exceptions and errors using RxJava. First, keep in mind that the Observable typically does not throw exceptions. Instead, by...
View ArticleApache Commons IO
1. Overview The Apache Commons project was created to provide developers with a set of common libraries that they can use in their day-to-day code. In this tutorial, we’ll explore some of the key...
View ArticleUsing Pairs in Java
1. Overview In this quick article, we discuss the highly useful programming concept known as a Pair. Pairs provide a convenient way of handling simple key to value association and are particularly...
View ArticleJava Weekly, Issue 194
Lots of interesting writeups on Java 9 this week. Here we go… 1. Spring and Java >> Five Command Line Options To Hack The Java 9 Module System [blog.codefx.org] Java 9 will be out in a week –...
View ArticleIntroduction to EGit
1. Overview In this article, we’re going to explore EGit – an evolution of the JGit library for Eclipse. 2. EGit Setup During the article, we’ll use the following tools: Eclipse Neon.3 version 4.6.3...
View ArticleGuide to Mustache with Spring Boot
1. Overview In this article, we’ll focus on using Mustache templates for producing HTML content in Spring Boot applications. It’s a logic-less template engine for creating dynamic content, which is...
View ArticleBinary Search Algorithm in Java
1. Overview In this article, we’ll cover advantages of a binary search over a simple linear search and walk through its implementation in Java. 2. Need for Efficient Search Let’s say we’re in the...
View Article“Stream has already been operated upon or closed” Exception in Java
1. Overview In this brief article, we’re going to discuss a common Exception that we may encounter when working with the Stream class in Java 8: IllegalStateException: stream has already been operated...
View ArticleVavr Tutorial
Vavr is a functional library for Java 8+ that provides immutable data types and functional control structures. Functional programming is not only a new set of tools to get accustomed with but also a...
View ArticleGuide to the Diamond Operator in Java
1. Overview In this article, we’ll look at the diamond operator in Java and how generics and the Collections API influenced its evolution. 2. Raw Types Prior to Java 1.5, the Collections API supported...
View Article